:root{
  --ink:#0b0806;
  --ink-2:#130e0a;
  --panel:#1a130d;
  --panel-2:#21180f;
  --line:rgba(212,166,74,.22);
  --gold:#d9ad55;
  --gold-hi:#f3d48a;
  --gold-lo:#8a6424;
  --red:#b3261e;
  --red-hi:#e0402f;
  --jade:#4fb08a;
  --text:#ece2cf;
  --muted:#a8987d;
  --radius:4px;
  --wrap:1200px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  background:var(--ink);
  color:var(--text);
  font:15px/1.6 "Noto Sans",system-ui,sans-serif;
  overflow-x:hidden;
}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 16px}

/* ---------- textures ---------- */
.paper{
  background:
    radial-gradient(ellipse at 20% 0%,rgba(217,173,85,.07),transparent 55%),
    radial-gradient(ellipse at 90% 100%,rgba(179,38,30,.08),transparent 50%),
    var(--ink-2);
}
.clouds{
  position:absolute;inset:0;pointer-events:none;opacity:.06;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='80' viewBox='0 0 160 80'%3E%3Cg fill='none' stroke='%23d9ad55' stroke-width='2'%3E%3Cpath d='M10 60c0-11 9-20 20-20 3-12 14-20 26-20 15 0 27 12 27 27 8 0 14 6 14 13'/%3E%3Cpath d='M40 60c0-7 5-12 12-12s12 5 12 12'/%3E%3Cpath d='M100 30c0-8 6-14 14-14 2-8 9-14 18-14 10 0 18 8 18 18'/%3E%3C/g%3E%3C/svg%3E");
}

/* ---------- top bar ---------- */
.topbar{
  background:#070504;border-bottom:1px solid var(--line);
  font-size:12.5px;color:var(--muted);
}
.topbar .wrap{display:flex;justify-content:space-between;align-items:center;height:34px;gap:12px}
.status-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--jade);box-shadow:0 0 8px var(--jade);margin-right:6px;animation:pulse 2s infinite}
@keyframes pulse{50%{opacity:.4}}
.topbar b{color:var(--gold-hi);font-weight:600}
.topbar .right{display:flex;gap:18px}
.topbar .right a:hover{color:var(--gold-hi)}

/* ---------- nav ---------- */
header.nav{
  position:sticky;top:0;z-index:50;
  background:linear-gradient(180deg,rgba(11,8,6,.96),rgba(11,8,6,.88));
  backdrop-filter:blur(6px);
  border-bottom:1px solid var(--line);
}
header.nav .wrap{display:flex;align-items:center;justify-content:space-between;height:72px}
.brand{display:flex;align-items:center;gap:12px}
.seal{
  width:44px;height:44px;display:grid;place-items:center;
  background:var(--red);color:#f7e6c4;
  font-family:"Ma Shan Zheng",serif;font-size:26px;line-height:1;
  border-radius:6px;box-shadow:inset 0 0 0 2px rgba(0,0,0,.25),0 0 0 1px var(--gold-lo);
  transform:rotate(-4deg);
}
.brand-name{font-family:Cinzel,serif;font-weight:900;font-size:22px;letter-spacing:2px;color:var(--gold-hi);line-height:1}
.brand-sub{font-size:10.5px;letter-spacing:3px;color:var(--muted);text-transform:uppercase}
nav.menu{display:flex;gap:4px}
nav.menu a{
  font-family:Cinzel,serif;font-weight:700;font-size:13.5px;letter-spacing:1.5px;text-transform:uppercase;
  padding:10px 16px;color:var(--text);position:relative;transition:color .2s;
}
nav.menu a::after{
  content:"";position:absolute;left:50%;bottom:4px;width:0;height:2px;
  background:linear-gradient(90deg,transparent,var(--gold),transparent);transition:all .25s;transform:translateX(-50%);
}
nav.menu a:hover,nav.menu a.active{color:var(--gold-hi)}
nav.menu a:hover::after,nav.menu a.active::after{width:70%}
.nav-cta{display:flex;gap:10px}
.burger{display:none;background:none;border:1px solid var(--line);color:var(--gold);width:42px;height:42px;border-radius:var(--radius);font-size:20px;cursor:pointer}

/* ---------- buttons ---------- */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  font-family:Cinzel,serif;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;font-size:13px;
  padding:12px 22px;border-radius:var(--radius);cursor:pointer;border:0;transition:transform .15s,filter .2s,box-shadow .2s;
  white-space:nowrap;
}
.btn:hover{transform:translateY(-1px);filter:brightness(1.12)}
.btn-red{
  background:linear-gradient(180deg,var(--red-hi),var(--red) 55%,#7e1912);
  color:#fff3dc;box-shadow:0 0 0 1px var(--gold-lo),0 6px 20px rgba(179,38,30,.35),inset 0 1px 0 rgba(255,255,255,.2);
}
.btn-gold{
  background:linear-gradient(180deg,var(--gold-hi),var(--gold) 50%,var(--gold-lo));
  color:#2a1a06;box-shadow:0 6px 20px rgba(217,173,85,.25),inset 0 1px 0 rgba(255,255,255,.4);
}
.btn-ghost{background:rgba(0,0,0,.35);color:var(--gold-hi);box-shadow:inset 0 0 0 1px var(--gold-lo)}
.btn-lg{padding:16px 30px;font-size:15px}

/* ---------- hero ---------- */
.hero{
  position:relative;min-height:640px;display:flex;align-items:center;overflow:hidden;
  border-bottom:1px solid var(--line);
}
.hero-bg{
  position:absolute;inset:0;
  background:url("../img/banner.webp") 100% center/cover no-repeat;
  transform:scale(1.04);animation:drift 22s ease-in-out infinite alternate;
}
@keyframes drift{to{transform:scale(1.1) translateX(-1.5%)}}
.hero-overlay{
  position:absolute;inset:0;
  background:
    linear-gradient(90deg,rgba(8,5,3,.97) 0%,rgba(8,5,3,.93) 40%,rgba(8,5,3,.55) 58%,rgba(8,5,3,.2) 78%,rgba(8,5,3,.35) 100%),
    linear-gradient(0deg,var(--ink) 0%,transparent 30%),
    linear-gradient(180deg,rgba(8,5,3,.7) 0%,transparent 25%);
}
.hero-glyph{
  position:absolute;right:4%;top:50%;transform:translateY(-50%);
  font-family:"Ma Shan Zheng",serif;font-size:300px;line-height:1;color:var(--red);opacity:.13;
  pointer-events:none;user-select:none;
}
.hero .wrap{position:relative;z-index:2;width:100%}
.hero-content{max-width:560px}
.kicker{
  display:inline-flex;align-items:center;gap:10px;
  font-size:12px;letter-spacing:4px;text-transform:uppercase;color:var(--gold);
  padding:6px 14px;border:1px solid var(--line);background:rgba(0,0,0,.4);border-radius:40px;margin-bottom:22px;
}
.hero h1{
  font-family:Cinzel,serif;font-weight:900;line-height:1.02;
  font-size:clamp(40px,6vw,74px);letter-spacing:1px;
  background:linear-gradient(180deg,#fff2cf 0%,var(--gold-hi) 40%,var(--gold) 70%,var(--gold-lo));
  -webkit-background-clip:text;background-clip:text;color:transparent;
  filter:drop-shadow(0 4px 18px rgba(0,0,0,.8));
}
.hero h1 span{display:block;font-size:.5em;letter-spacing:8px;color:var(--text);-webkit-text-fill-color:var(--text);margin-bottom:6px;font-weight:700}
.hero p.lead{font-size:17px;color:#d6c8ad;margin:22px 0 32px;max-width:480px}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap}
.hero-meta{display:flex;gap:28px;margin-top:38px;flex-wrap:wrap}
.hero-meta div{border-left:2px solid var(--red);padding-left:12px}
.hero-meta b{display:block;font-family:Cinzel,serif;font-size:22px;color:var(--gold-hi)}
.hero-meta small{font-size:11px;letter-spacing:2px;text-transform:uppercase;color:var(--muted)}

/* ---------- section scaffolding ---------- */
section{position:relative;padding:84px 0}
.sec-head{text-align:center;margin-bottom:46px}
.sec-head .cn{font-family:"Ma Shan Zheng",serif;font-size:28px;color:var(--red-hi);letter-spacing:6px}
.sec-head h2{font-family:Cinzel,serif;font-weight:900;font-size:clamp(26px,3.4vw,38px);letter-spacing:2px;color:var(--gold-hi);text-transform:uppercase}
.divider{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:12px;color:var(--gold)}
.divider::before,.divider::after{content:"";height:1px;width:80px;background:linear-gradient(90deg,transparent,var(--gold))}
.divider::after{transform:scaleX(-1)}
.divider i{width:9px;height:9px;transform:rotate(45deg);border:1px solid var(--gold);display:block}

/* ornate panel */
.panel{
  position:relative;background:linear-gradient(180deg,var(--panel-2),var(--panel));
  border:1px solid var(--line);border-radius:var(--radius);
}
.panel::before,.panel::after{
  content:"";position:absolute;width:18px;height:18px;border:2px solid var(--gold);pointer-events:none;
}
.panel::before{top:-1px;left:-1px;border-right:0;border-bottom:0}
.panel::after{bottom:-1px;right:-1px;border-left:0;border-top:0}
.panel-title{
  display:flex;align-items:center;justify-content:space-between;
  padding:16px 20px;border-bottom:1px solid var(--line);
  font-family:Cinzel,serif;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:var(--gold-hi);font-size:15px;
}
.panel-title a{font-family:"Noto Sans";font-size:12px;letter-spacing:1px;color:var(--muted);text-transform:none}
.panel-title a:hover{color:var(--gold)}

/* ---------- status strip ---------- */
.strip{margin-top:-60px;position:relative;z-index:5;padding:0}
.strip-grid{display:grid;grid-template-columns:repeat(4,1fr)}
.stat{padding:22px 24px;display:flex;align-items:center;gap:16px;border-right:1px solid var(--line)}
.stat:last-child{border-right:0}
.stat .ico{
  width:48px;height:48px;flex:none;display:grid;place-items:center;border-radius:50%;
  background:radial-gradient(circle,rgba(217,173,85,.18),transparent 70%);border:1px solid var(--line);color:var(--gold);
}
.stat b{display:block;font-family:Cinzel,serif;font-size:26px;line-height:1.1;color:var(--text)}
.stat small{font-size:11.5px;letter-spacing:1.5px;text-transform:uppercase;color:var(--muted)}
.stat.online b{color:var(--jade)}

/* ---------- news + server ---------- */
.grid-2{display:grid;grid-template-columns:1.6fr 1fr;gap:28px}
.news-item{display:flex;gap:18px;padding:18px 20px;border-bottom:1px solid rgba(212,166,74,.1);transition:background .2s}
.news-item:last-child{border-bottom:0}
.news-item:hover{background:rgba(217,173,85,.04)}
.news-date{flex:none;width:58px;text-align:center;border:1px solid var(--line);padding:6px 0;background:rgba(0,0,0,.25)}
.news-date b{display:block;font-family:Cinzel,serif;font-size:22px;color:var(--gold-hi);line-height:1}
.news-date small{font-size:10px;letter-spacing:2px;color:var(--muted);text-transform:uppercase}
.tag{display:inline-block;font-size:10.5px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;padding:2px 8px;border-radius:2px;margin-bottom:4px}
.tag.evt{background:rgba(179,38,30,.2);color:#ff8a7a;border:1px solid rgba(224,64,47,.35)}
.tag.up{background:rgba(79,176,138,.14);color:#7fd6b2;border:1px solid rgba(79,176,138,.35)}
.tag.nw{background:rgba(217,173,85,.14);color:var(--gold-hi);border:1px solid var(--line)}
.news-item h3{font-size:16px;font-weight:600;color:var(--text);margin-bottom:2px}
.news-item p{font-size:13.5px;color:var(--muted)}

.info-list{list-style:none;padding:8px 20px 14px}
.info-list li{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px dashed rgba(212,166,74,.14);font-size:14px}
.info-list li:last-child{border-bottom:0}
.info-list span{color:var(--muted)}
.info-list b{color:var(--gold-hi);font-weight:600}
.event-box{margin:0 20px 20px;padding:16px;background:linear-gradient(135deg,rgba(179,38,30,.25),rgba(0,0,0,.3));border:1px solid rgba(224,64,47,.35);border-radius:var(--radius)}
.event-box small{font-size:11px;letter-spacing:2px;text-transform:uppercase;color:#ff9d8f}
.event-box h4{font-family:Cinzel,serif;font-size:17px;color:var(--text);margin:2px 0 10px}
.countdown{display:flex;gap:8px}
.countdown div{flex:1;text-align:center;background:rgba(0,0,0,.45);border:1px solid var(--line);padding:6px 0}
.countdown b{display:block;font-family:Cinzel,serif;font-size:22px;color:var(--gold-hi);line-height:1.1}
.countdown small{font-size:9.5px;letter-spacing:1.5px;color:var(--muted)}

/* ---------- classes ---------- */
.classes{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.class-card{
  position:relative;overflow:hidden;padding:28px 22px 24px;min-height:240px;
  display:flex;flex-direction:column;justify-content:flex-end;transition:transform .25s,border-color .25s;
}
.class-card:hover{transform:translateY(-4px);border-color:var(--gold)}
.class-card .big{
  position:absolute;top:-10px;right:-6px;font-family:"Ma Shan Zheng",serif;font-size:150px;line-height:1;
  color:var(--gold);opacity:.08;transition:opacity .25s;
}
.class-card:hover .big{opacity:.18}
.class-card .role{font-size:11px;letter-spacing:2px;text-transform:uppercase;color:var(--red-hi);font-weight:700}
.class-card h3{font-family:Cinzel,serif;font-size:22px;color:var(--gold-hi);margin:2px 0 8px}
.class-card p{font-size:13.5px;color:var(--muted)}

/* ---------- ranking ---------- */
.rank-tabs{display:flex;flex-wrap:wrap;gap:6px;padding:12px 20px 0}
.rank-tabs button{
  background:none;border:1px solid var(--line);color:var(--muted);cursor:pointer;
  font:700 12px Cinzel,serif;letter-spacing:1.5px;text-transform:uppercase;padding:8px 14px;border-radius:2px;
}
.rank-tabs button.on{background:rgba(217,173,85,.12);color:var(--gold-hi);border-color:var(--gold-lo)}
table.rank{width:100%;border-collapse:collapse;font-size:14px}
table.rank th{font-size:11px;letter-spacing:1.5px;text-transform:uppercase;color:var(--muted);text-align:left;padding:14px 20px 8px;font-weight:600}
table.rank td{padding:11px 20px;border-top:1px solid rgba(212,166,74,.08)}
table.rank tr:hover td{background:rgba(217,173,85,.04)}
.pos{display:inline-grid;place-items:center;width:28px;height:28px;font:700 13px Cinzel,serif;border:1px solid var(--line);color:var(--muted)}
.pos.p1{background:linear-gradient(180deg,var(--gold-hi),var(--gold-lo));color:#2a1a06;border:0}
.pos.p2{background:linear-gradient(180deg,#e6e6e6,#8d8d8d);color:#1d1d1d;border:0}
.pos.p3{background:linear-gradient(180deg,#e2a46b,#8a5022);color:#24130a;border:0}
.pname{font-weight:600}
.pclass{color:var(--muted);font-size:13px}
.plevel{font-family:Cinzel,serif;color:var(--gold-hi);font-weight:700}

/* ---------- download CTA ---------- */
.dl{
  position:relative;overflow:hidden;padding:0;
}
.dl-inner{
  position:relative;display:grid;grid-template-columns:1.2fr 1fr;gap:30px;align-items:center;padding:56px;
  background:
    linear-gradient(90deg,rgba(11,8,6,.97) 35%,rgba(11,8,6,.75) 65%,rgba(11,8,6,.55)),
    url("../img/banner.webp") 100% 40%/cover;
}
.dl h2{font-family:Cinzel,serif;font-weight:900;font-size:clamp(26px,3.4vw,40px);color:var(--gold-hi);line-height:1.1;margin-bottom:12px}
.dl p{color:#d0c2a6;margin-bottom:24px;max-width:460px}
.dl-steps{display:grid;gap:12px}
.dl-step{display:flex;gap:14px;align-items:center;background:rgba(0,0,0,.55);border:1px solid var(--line);padding:14px 16px;border-radius:var(--radius)}
.dl-step .n{flex:none;width:34px;height:34px;display:grid;place-items:center;background:var(--red);color:#fff3dc;font:700 15px Cinzel,serif;border-radius:50%;box-shadow:0 0 0 1px var(--gold-lo)}
.dl-step b{display:block;font-size:14.5px}
.dl-step small{color:var(--muted);font-size:12.5px}

/* ---------- footer ---------- */
footer{background:#060403;border-top:1px solid var(--line);padding:46px 0 26px;font-size:13.5px;color:var(--muted)}
.foot-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:30px;margin-bottom:34px}
footer h5{font-family:Cinzel,serif;font-size:13px;letter-spacing:2px;text-transform:uppercase;color:var(--gold-hi);margin-bottom:12px}
footer ul{list-style:none;display:grid;gap:7px}
footer a:hover{color:var(--gold-hi)}
.copy{border-top:1px solid rgba(212,166,74,.1);padding-top:20px;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:12px}

/* ---------- responsive ---------- */
@media (max-width:1024px){
  nav.menu,.nav-cta .btn-ghost{display:none}
  .burger{display:block}
  nav.menu.open{
    display:flex;flex-direction:column;position:absolute;top:72px;left:0;right:0;
    background:rgba(11,8,6,.98);border-bottom:1px solid var(--line);padding:10px 16px;
  }
  .strip-grid{grid-template-columns:repeat(2,1fr)}
  .stat:nth-child(2){border-right:0}
  .stat:nth-child(-n+2){border-bottom:1px solid var(--line)}
  .grid-2{grid-template-columns:1fr}
  .classes{grid-template-columns:repeat(2,1fr)}
  .dl-inner{grid-template-columns:1fr;padding:36px 24px}
  .foot-grid{grid-template-columns:1fr 1fr}
  .hero-glyph{font-size:200px;opacity:.08}
}
@media (max-width:620px){
  .topbar .right{display:none}
  .nav-cta .btn-red{display:none}
  .hero{min-height:560px}
  .hero-overlay{background:linear-gradient(0deg,var(--ink) 5%,rgba(8,5,3,.75) 50%,rgba(8,5,3,.6))}
  .hero-glyph{display:none}
  .strip-grid,.classes{grid-template-columns:1fr}
  .stat{border-right:0;border-bottom:1px solid var(--line)}
  .stat:last-child{border-bottom:0}
  section{padding:60px 0}
  .foot-grid{grid-template-columns:1fr}
  table.rank .hide-sm{display:none}
  table.rank th,table.rank td{padding-left:12px;padding-right:12px}
}

/* ---------- "em breve" ---------- */
.soon{opacity:.5;cursor:not-allowed}
nav.menu a.soon:hover{color:var(--text)}
nav.menu a.soon:hover::after{width:0}

/* ---------- inner page hero ---------- */
.page-hero{position:relative;padding:70px 0 60px;overflow:hidden;border-bottom:1px solid var(--line);text-align:center}
.page-hero-bg{
  position:absolute;inset:0;
  background:
    linear-gradient(180deg,transparent 55%,var(--ink)),
    linear-gradient(90deg,rgba(8,5,3,.97) 0%,rgba(8,5,3,.94) 58%,rgba(8,5,3,.55) 78%,rgba(8,5,3,.75) 100%),
    url("../img/banner.webp") 100% 30%/auto 230% no-repeat;
}
.page-hero .wrap{position:relative}
.page-hero .cn{font-family:"Ma Shan Zheng",serif;font-size:26px;color:var(--red-hi);letter-spacing:6px}
.page-hero h1{
  font-family:Cinzel,serif;font-weight:900;font-size:clamp(32px,5vw,52px);letter-spacing:2px;text-transform:uppercase;
  background:linear-gradient(180deg,#fff2cf,var(--gold-hi) 45%,var(--gold-lo));-webkit-background-clip:text;background-clip:text;color:transparent;
}
.page-hero p{color:#cdbfa3;margin-top:6px}

/* ---------- registro ---------- */
.reg-section{padding:60px 0 84px}
.reg-grid{position:relative;display:grid;grid-template-columns:1.35fr 1fr;gap:28px;align-items:start}
.reg-body{padding:24px 24px 26px}
.reg-side{display:grid;gap:20px}
.field{margin-bottom:18px}
.field label{display:block;font:700 12px Cinzel,serif;letter-spacing:1.5px;text-transform:uppercase;color:var(--gold-hi);margin-bottom:7px}
.field input{
  width:100%;height:46px;padding:0 14px;border-radius:var(--radius);
  background:rgba(0,0,0,.45);border:1px solid var(--line);color:var(--text);font:15px "Noto Sans",sans-serif;
  transition:border-color .2s,box-shadow .2s;
}
.field input::placeholder{color:#6f624f}
.field input:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 3px rgba(217,173,85,.15)}
.field small,.hint{display:block;font-size:12.5px;color:var(--muted);margin-top:6px}
.hint{margin:-8px 0 18px}
.field.has-error input{border-color:var(--red-hi);box-shadow:0 0 0 3px rgba(224,64,47,.15)}
.field-error{color:#ff8a7a;font-size:13px;margin-top:6px}
.field-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.pw-wrap{position:relative}
.pw-wrap input{padding-right:46px}
.pw-toggle{
  position:absolute;right:5px;top:5px;width:36px;height:36px;display:grid;place-items:center;
  border:0;border-radius:3px;background:transparent;color:var(--muted);cursor:pointer;transition:color .2s,background .2s;
}
.pw-toggle:hover{color:var(--gold-hi);background:rgba(217,173,85,.1)}
.pw-toggle .i-eye-off{display:none}
.pw-toggle.on{color:var(--gold-hi)}
.pw-toggle.on .i-eye{display:none}
.pw-toggle.on .i-eye-off{display:block}
.match-msg{font-size:12.5px;margin-top:6px;min-height:0}
.match-msg.ok{color:#7fd6b2}
.match-msg.bad{color:#ff8a7a}
.pw-meter{height:4px;background:rgba(255,255,255,.06);border-radius:2px;margin-top:8px;overflow:hidden}
.pw-meter i{display:block;height:100%;width:0;transition:width .25s,background .25s}
.pw-meter[data-score="0"] i,.pw-meter[data-score="1"] i{width:25%;background:var(--red-hi)}
.pw-meter[data-score="2"] i{width:50%;background:#e08a2f}
.pw-meter[data-score="3"] i{width:75%;background:var(--gold)}
.pw-meter[data-score="4"] i{width:100%;background:var(--jade)}
.check{display:flex;gap:10px;align-items:flex-start;cursor:pointer;font-size:14px;margin-bottom:6px}
.check input{width:18px;height:18px;margin-top:2px;accent-color:var(--red)}
.check a{color:var(--gold-hi);text-decoration:underline}
.check.has-error span{color:#ff8a7a}
.btn-block{width:100%;margin-top:18px}
.reg-alt{text-align:center;margin-top:16px;font-size:14px;color:var(--muted)}
.reg-alt a{color:var(--gold-hi)}
.alert{padding:12px 14px;margin-bottom:18px;border-radius:var(--radius);background:rgba(179,38,30,.18);border:1px solid rgba(224,64,47,.4);color:#ffb3a8;font-size:14px}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.reg-tip{display:flex;gap:16px;padding:18px 20px;align-items:center}
.reg-tip .cn-small{flex:none;width:52px;height:52px;display:grid;place-items:center;font-family:"Ma Shan Zheng",serif;font-size:30px;color:var(--jade);border:1px solid rgba(79,176,138,.35);background:rgba(79,176,138,.08);border-radius:50%}
.reg-tip b{color:var(--gold-hi)}
.reg-tip p{font-size:13.5px;color:var(--muted)}
.reg-success{text-align:center;padding:44px 28px}
.success-seal{
  width:84px;height:84px;margin:0 auto 18px;display:grid;place-items:center;
  font-family:"Ma Shan Zheng",serif;font-size:48px;color:#f7e6c4;background:var(--red);
  border-radius:10px;transform:rotate(-5deg);box-shadow:0 0 0 2px var(--gold-lo),0 10px 30px rgba(179,38,30,.4);
}
.reg-success h2{font-family:Cinzel,serif;font-size:32px;color:var(--gold-hi);margin-bottom:10px}
.reg-success p{color:#d0c2a6;max-width:440px;margin:0 auto 26px}
@media (max-width:1024px){ .reg-grid{grid-template-columns:1fr} }
@media (max-width:620px){ .field-row{grid-template-columns:1fr;gap:0} .reg-body{padding:20px 16px} }

/* ---------- download ---------- */
.dl-section{padding:60px 0 84px}
.dl-grid{position:relative;display:grid;grid-template-columns:1.5fr 1fr;gap:28px;align-items:start}
.dl-main{padding:30px}
.dl-main-head{display:flex;gap:20px;align-items:center;margin-bottom:24px}
.dl-icon{
  flex:none;width:72px;height:72px;display:grid;place-items:center;border-radius:50%;color:var(--gold-hi);
  background:radial-gradient(circle,rgba(217,173,85,.22),rgba(0,0,0,.3) 70%);border:1px solid var(--gold-lo);
  box-shadow:0 0 30px rgba(217,173,85,.15);
}
.dl-kicker{font-size:11.5px;letter-spacing:2px;text-transform:uppercase;color:var(--red-hi);font-weight:700}
.dl-main h2{font-family:Cinzel,serif;font-size:28px;color:var(--gold-hi);line-height:1.15}
.dl-main-head p{color:var(--muted);font-size:14px}
.dl-facts{list-style:none;display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);background:rgba(0,0,0,.25);margin-bottom:22px}
.dl-facts li{padding:12px 14px;border-right:1px solid var(--line)}
.dl-facts li:last-child{border-right:0}
.dl-facts span{display:block;font-size:10.5px;letter-spacing:1.5px;text-transform:uppercase;color:var(--muted)}
.dl-facts b{font-size:14.5px;color:var(--text);font-weight:600}
.dl-btn{font-size:16px;padding:18px}
.dl-btn small{font-family:"Noto Sans";font-weight:600;letter-spacing:0;text-transform:none;opacity:.75}
.dl-mirrors{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:14px;font-size:13px;color:var(--muted)}
.dl-hash{display:flex;align-items:center;gap:10px;margin-top:18px;padding:10px 12px;background:rgba(0,0,0,.35);border:1px dashed var(--line);font-size:12px}
.dl-hash span{flex:none;color:var(--muted);letter-spacing:1px;font-weight:700}
.dl-hash code{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#bfb196;font-family:ui-monospace,Consolas,monospace}
.copy-btn{flex:none;background:none;border:1px solid var(--line);color:var(--gold-hi);font-size:11.5px;padding:4px 10px;cursor:pointer;border-radius:2px}
.copy-btn:hover{border-color:var(--gold)}
.copy-btn.done{color:var(--jade);border-color:rgba(79,176,138,.5)}
.dl-side{display:grid;gap:20px}
.dl-grid>*,.reg-grid>*,.req-grid>*{min-width:0}
.dl-auto-body{padding:20px}
.dl-auto-ver{display:flex;align-items:baseline;gap:12px;margin-bottom:10px}
.dl-auto-ver b{font-family:Cinzel,serif;font-size:40px;line-height:1;color:var(--jade)}
.dl-auto-ver small{color:var(--muted);font-size:12.5px}
.dl-auto-body p{font-size:14px;color:#cdbfa3}
.link-gold{color:var(--gold-hi);white-space:nowrap}
.link-gold:hover{text-decoration:underline}

.steps4{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.step{padding:28px 22px 24px;text-align:center}
.step .n{
  width:52px;height:52px;margin:0 auto 14px;display:grid;place-items:center;border-radius:50%;
  background:var(--red);color:#fff3dc;font:900 22px Cinzel,serif;box-shadow:0 0 0 2px var(--gold-lo),0 6px 20px rgba(179,38,30,.35);
}
.step h3{font-family:Cinzel,serif;color:var(--gold-hi);font-size:19px;margin-bottom:6px}
.step p{font-size:13.5px;color:var(--muted)}
.step p b{color:var(--text)}

.req-grid{grid-template-columns:1.2fr 1fr;position:relative}
table.req{width:100%;border-collapse:collapse;font-size:14px}
table.req th{font:700 12px Cinzel,serif;letter-spacing:1.5px;text-transform:uppercase;color:var(--gold-hi);text-align:left;padding:16px 18px;border-bottom:1px solid var(--line)}
table.req td{padding:12px 18px;border-top:1px solid rgba(212,166,74,.08)}
table.req td:first-child{color:var(--muted);font-size:13px}
table.req tr:hover td{background:rgba(217,173,85,.04)}
.deps{padding:10px 14px 16px;display:grid;gap:10px}
.dep{display:grid;grid-template-columns:1fr auto;gap:2px 12px;padding:12px 14px;background:rgba(0,0,0,.3);border:1px solid var(--line);border-radius:var(--radius);transition:border-color .2s}
a.dep:hover{border-color:var(--gold)}
.dep b{color:var(--text);font-size:14.5px}
.dep small{grid-column:1;color:var(--muted);font-size:12.5px}
.dep i{grid-column:2;grid-row:1 / span 2;align-self:center;font-style:normal;font-size:12px;color:var(--gold)}
.dep i.ok{color:var(--jade)}

.faq-wrap{max-width:860px}
.faq{display:grid;gap:12px}
.faq details{padding:0}
.faq summary{
  list-style:none;cursor:pointer;padding:16px 48px 16px 20px;position:relative;font-weight:600;color:var(--text);
}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:20px;top:50%;transform:translateY(-50%);color:var(--gold);font:700 22px Cinzel,serif}
.faq details[open] summary::after{content:"−"}
.faq details[open] summary{color:var(--gold-hi)}
.faq details p{padding:0 20px 18px;color:#cdbfa3;font-size:14px}
.faq code{background:rgba(0,0,0,.4);padding:1px 6px;border:1px solid var(--line);font-size:12.5px}

@media (max-width:1024px){
  .dl-grid,.req-grid{grid-template-columns:1fr}
  .steps4{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:620px){
  .dl-main{padding:22px 16px}
  .dl-main h2{font-size:22px}
  .dl-hash{flex-wrap:wrap}
  .dl-hash code{flex-basis:100%;order:3;white-space:normal;word-break:break-all}
  .dl-main-head{flex-direction:column;align-items:flex-start;gap:14px}
  .dl-facts{grid-template-columns:1fr 1fr}
  .dl-facts li:nth-child(2){border-right:0}
  .dl-facts li:nth-child(-n+2){border-bottom:1px solid var(--line)}
  .steps4{grid-template-columns:1fr}
  table.req th,table.req td{padding:10px 10px}
}

/* ---------- botão + modal "Dicas de instalação" ---------- */
.tips-open{
  width:100%;margin-top:16px;display:flex;align-items:center;gap:14px;text-align:left;cursor:pointer;
  padding:14px 16px;border-radius:var(--radius);background:rgba(79,176,138,.07);border:1px solid rgba(79,176,138,.35);color:var(--text);
  font:inherit;transition:background .2s,border-color .2s;
}
.tips-open:hover{background:rgba(79,176,138,.13);border-color:var(--jade)}
.tips-open-ico{flex:none;width:36px;height:36px;display:grid;place-items:center;border-radius:50%;background:var(--jade);color:#08130e;font:900 18px Cinzel,serif}
.tips-open b{display:block;color:#9fe3c6;font-size:15px}
.tips-open small{display:block;color:var(--muted);font-size:12.5px}
.tips-open-go{margin-left:auto;color:var(--jade);font-size:20px}
.faq .dl-hash{margin:-6px 20px 18px}

dialog.tips{
  width:min(860px,calc(100vw - 24px));max-height:calc(100vh - 24px);margin:auto;padding:0;
  background:linear-gradient(180deg,var(--panel-2),var(--panel));color:var(--text);
  border:1px solid var(--gold-lo);border-radius:6px;box-shadow:0 30px 80px rgba(0,0,0,.7);
  overflow:hidden;
}
dialog.tips[open]{display:flex;flex-direction:column;animation:tipsIn .22s ease-out}
@keyframes tipsIn{from{opacity:0;transform:translateY(12px) scale(.98)}}
dialog.tips::backdrop{background:rgba(5,3,2,.78);backdrop-filter:blur(3px)}
.tips-head{display:flex;justify-content:space-between;align-items:center;padding:16px 22px;border-bottom:1px solid var(--line)}
.tips-kicker{font-size:11px;letter-spacing:2px;text-transform:uppercase;color:var(--red-hi);font-weight:700}
.tips-head h2{font-family:Cinzel,serif;font-size:20px;color:var(--gold-hi)}
.tips-close{background:none;border:1px solid var(--line);color:var(--muted);width:36px;height:36px;border-radius:3px;cursor:pointer;font-size:15px}
.tips-close:hover{color:var(--gold-hi);border-color:var(--gold)}
.tips-body{overflow:auto;padding:22px}
.tip-shot{
  position:relative;display:grid;place-items:center;min-height:260px;padding:26px 18px;border-radius:4px;
  background:linear-gradient(135deg,#1d3557,#284b7a 50%,#1b2f4f);border:1px solid rgba(255,255,255,.08);
}
.tip-shot img{max-width:100%;max-height:340px;border-radius:4px;box-shadow:0 10px 30px rgba(0,0,0,.5)}
.shot-label{position:absolute;right:10px;bottom:8px;font-size:10px;letter-spacing:1.5px;text-transform:uppercase;color:rgba(255,255,255,.45)}
.tip-text{padding-top:18px}
.tip-text h3{display:flex;align-items:center;gap:10px;font-size:18px;color:var(--gold-hi);margin-bottom:6px}
.tip-n{flex:none;width:28px;height:28px;display:grid;place-items:center;border-radius:50%;background:var(--red);color:#fff3dc;font:700 14px Cinzel,serif}
.tip-text p{color:#d6c8ad;font-size:14.5px}
.tip-text b{color:var(--text)}
.tip-warn{margin-top:10px;padding:10px 12px;border-left:3px solid #e08a2f;background:rgba(224,138,47,.1);color:#f2c38f !important;font-size:13.5px !important}
.tips-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 22px;border-top:1px solid var(--line)}
.tips-foot .btn[disabled]{opacity:.35;pointer-events:none}
.tips-dots{display:flex;gap:8px}
.tips-dots button{width:10px;height:10px;border-radius:50%;border:1px solid var(--gold-lo);background:transparent;cursor:pointer;padding:0}
.tips-dots button.on{background:var(--gold);border-color:var(--gold)}
body.modal-open{overflow:hidden}

/* ---- ilustrações das telas do Windows ---- */
.mk{font-family:"Segoe UI",system-ui,sans-serif;color:#1b1b1b;font-size:12.5px;line-height:1.4;text-align:left;box-shadow:0 12px 30px rgba(0,0,0,.45)}
.mk b{color:inherit}
.ring{position:relative;outline:3px solid #ff3b30;outline-offset:3px;border-radius:3px;animation:ringPulse 1.4s ease-in-out infinite}
@keyframes ringPulse{50%{outline-color:rgba(255,59,48,.35);outline-offset:6px}}
.mk-browser{width:min(520px,100%);background:#f3f3f3;border-radius:8px;overflow:hidden}
.mk-bar{display:flex;align-items:center;gap:6px;padding:8px 10px;background:#e4e4e4}
.mk-bar>span{width:9px;height:9px;border-radius:50%;background:#c9c9c9}
.mk-url{flex:1;background:#fff;border-radius:12px;padding:3px 12px;color:#555;font-size:11.5px}
.mk-dlicon{width:26px;height:26px;display:grid;place-items:center;border-radius:4px;background:#d6e6fb;color:#0a5ad4}
.mk-dlpanel{margin:10px 10px 12px auto;width:min(360px,calc(100% - 20px));background:#fff;border-radius:8px;padding:10px;box-shadow:0 6px 20px rgba(0,0,0,.18)}
.mk-dlpanel-title{font-weight:600;margin-bottom:8px}
.mk-dlitem{display:flex;gap:10px;align-items:flex-start}
.mk-warnicon{flex:none;width:22px;height:22px;display:grid;place-items:center;border-radius:50%;background:#fde7a9;color:#8a5a00;font-weight:700}
.mk-dltext{flex:1;min-width:0}
.mk-dltext b{display:block;word-break:break-all}
.mk-dltext small{color:#666}
.mk-dots{flex:none;padding:0 6px;font-weight:700}
.mk-menu{margin:8px 0 0 auto;width:170px;background:#fff;border:1px solid #ddd;border-radius:6px;padding:4px}
.mk-menu div{padding:5px 8px;border-radius:3px}
.mk-pair{display:flex;align-items:center;gap:14px;flex-wrap:wrap;justify-content:center}
.mk-arrow{color:#fff;font-size:26px}
.mk-smart{position:relative;width:250px;min-height:200px;background:#0063b1;color:#fff;padding:18px 16px 14px;display:flex;flex-direction:column}
.mk-smart h4{font-size:16px;font-weight:600;margin:6px 0 8px;line-height:1.25}
.mk-smart p{font-size:11.5px;opacity:.95;margin-bottom:8px}
.mk-smart u{align-self:flex-start;font-size:11.5px;cursor:default}
.mk-x{position:absolute;right:10px;top:6px;font-size:12px;opacity:.8}
.mk-btns{display:flex;gap:8px;justify-content:flex-end;margin-top:auto;padding-top:12px}
.mk-b{border:1px solid #fff;padding:4px 10px;font-size:11.5px;white-space:nowrap}
.mk-uac{width:min(380px,100%);background:#fff}
.mk-uac-top{background:#1f6fc4;color:#fff;padding:10px 14px;font-size:12px}
.mk-uac-body{padding:14px 16px}
.mk-uac-body h4{font-size:15px;font-weight:600;margin-bottom:12px}
.mk-uac-app{display:flex;align-items:center;gap:10px;margin-bottom:4px}
.mk-appicon{width:30px;height:30px;display:grid;place-items:center;background:#e9eef6;border-radius:4px}
.mk-uac-body small{color:#555}
.mk-btns2{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:16px}
.mk-b2{text-align:center;padding:6px;background:#e6e6e6;border:1px solid #ccc}
.mk-b2.primary{background:#0067c0;border-color:#0067c0;color:#fff}
.mk-inst{width:min(500px,100%);background:#f0f0f0;border:1px solid #9a9a9a}
.mk-inst-title{display:flex;justify-content:space-between;padding:6px 10px;background:#fff;border-bottom:1px solid #ddd;font-size:12px}
.mk-inst-title span{color:#777;letter-spacing:4px}
.mk-inst-head{background:#fff;padding:10px 14px;border-bottom:1px solid #ccc}
.mk-inst-head small{display:block;color:#555}
.mk-inst-body{padding:14px}
.mk-inst-body label{display:block;font-size:11.5px;margin-bottom:4px}
.mk-path{display:flex;gap:6px}
.mk-input{flex:1;min-width:0;background:#fff;border:1px solid #7a7a7a;padding:4px 6px;font-size:11.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mk-input.ok{border-color:#2e9e5b;box-shadow:0 0 0 2px rgba(46,158,91,.25)}
.mk-good{color:#1f7a45;font-weight:600;margin-top:8px}
.mk-b3{display:inline-block;padding:3px 12px;background:#e1e1e1;border:1px solid #adadad;font-size:11.5px;white-space:nowrap}
.mk-b3.primary{border-color:#0078d7;box-shadow:inset 0 0 0 1px #0078d7}
.mk-inst-foot{display:flex;justify-content:flex-end;gap:6px;padding:10px 14px;border-top:1px solid #ccc}
.mk-sec{display:flex;width:min(520px,100%);background:#f3f3f3;border-radius:8px;overflow:hidden}
.mk-sec-side{flex:none;width:44px;background:#e9e9e9;padding:10px 0;display:grid;gap:6px;align-content:start;justify-items:center;color:#555}
.mk-sec-side div{width:30px;height:28px;display:grid;place-items:center;border-radius:4px}
.mk-sec-side div.on{background:#fff;box-shadow:inset 3px 0 0 #0067c0;color:#0067c0}
.mk-sec-main{flex:1;min-width:0;padding:16px 18px}
.mk-crumb{font-size:14px;margin-bottom:6px;color:#444}
.mk-crumb b{color:#111}
.mk-sec-main p{color:#555;font-size:11.5px;margin-bottom:12px}
.mk-radio{display:flex;align-items:center;gap:8px;padding:5px 6px;margin-bottom:4px;width:max-content}
.mk-radio i{width:14px;height:14px;border-radius:50%;border:1.5px solid #555;display:grid;place-items:center}
.mk-radio.sel i{border-color:#0067c0}
.mk-radio.sel i::after{content:"";width:7px;height:7px;border-radius:50%;background:#0067c0}
.mk-add{display:inline-block;padding:6px 12px;background:#fff;border:1px solid #ccc;border-radius:4px}
.mk-menu2{margin-top:8px;width:170px;background:#fff;border:1px solid #ddd;border-radius:6px;padding:4px;box-shadow:0 4px 14px rgba(0,0,0,.12)}
.mk-menu2 div{padding:5px 8px;border-radius:3px}
.mk-menu2 .hl{background:#e5f0fb;color:#0058b0;font-weight:600}

@media (max-width:620px){
  .tips-body{padding:14px}
  .tip-shot{min-height:200px;padding:16px 10px}
  .mk-smart{width:100%}
  .mk-arrow{transform:rotate(90deg)}
  .tips-foot{padding:12px 14px}
  .tips-foot .btn{flex:1;padding:12px 8px;font-size:12px}
  .tips-dots{display:none}
}

/* ---------- server info ---------- */
.si-section{padding:60px 0 50px}
.si-status{position:relative;display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:18px}
.si-card{padding:22px 22px 20px}
.si-label{font:700 11.5px Cinzel,serif;letter-spacing:2px;text-transform:uppercase;color:var(--gold)}
.si-big{font-family:Cinzel,serif;font-weight:900;font-size:44px;line-height:1.15;color:var(--text);margin:6px 0 4px;font-variant-numeric:tabular-nums}
.si-online .si-big{color:var(--jade);font-size:54px;text-shadow:0 0 24px rgba(79,176,138,.35)}
.si-clock{font-size:34px;margin:12px 0 8px}
.si-sub{font-size:12.5px;color:var(--muted)}
.si-sub b{color:var(--gold-hi)}
.si-state{margin:16px 0 12px}
.st-badge{display:inline-flex;align-items:center;gap:9px;font:700 18px Cinzel,serif;letter-spacing:1px}
.st-badge i{width:12px;height:12px;border-radius:50%}
.st-badge.up{color:#7fd6b2}
.st-badge.up i{background:var(--jade);box-shadow:0 0 10px var(--jade);animation:pulse 2s infinite}
.st-badge.down{color:#ff8a7a}
.st-badge.down i{background:var(--red-hi)}
.si-note{position:relative;text-align:center;font-size:12px;color:var(--muted);margin-top:16px}

.si-grid{grid-template-columns:1.6fr 1fr;margin-bottom:24px}
.si-grid>*{min-width:0}
.chart24{display:grid;grid-template-columns:auto 1fr;grid-template-rows:200px auto;gap:6px 10px;padding:22px 20px 16px}
.chart24-y{display:flex;flex-direction:column;justify-content:space-between;font-size:11px;color:var(--muted);text-align:right;font-variant-numeric:tabular-nums}
.chart24-plot{
  position:relative;display:flex;align-items:flex-end;gap:2px;border-bottom:1px solid rgba(212,166,74,.35);
  background:repeating-linear-gradient(to top,transparent 0,transparent calc(50% - 1px),rgba(212,166,74,.08) calc(50% - 1px),rgba(212,166,74,.08) 50%);
}
.c-col{flex:1;height:100%;display:flex;align-items:flex-end;cursor:default;outline:none}
.c-bar{width:100%;background:var(--gold);border-radius:4px 4px 0 0;min-height:0;transition:background .15s}
.c-bar.empty{background:transparent}
.c-col:hover .c-bar,.c-col:focus .c-bar{background:var(--gold-hi)}
.c-col:hover,.c-col:focus{background:rgba(217,173,85,.06)}
.chart24-x{grid-column:2;display:flex;gap:2px;font-size:10.5px;color:var(--muted)}
.chart24-x span{flex:1;text-align:center;white-space:nowrap}
.chart-empty{padding:0 20px 18px;font-size:12.5px;color:var(--muted)}

.si-totals{display:grid;grid-template-columns:repeat(6,1fr)}
.si-totals>div{padding:20px 16px;text-align:center;border-right:1px solid var(--line)}
.si-totals>div:last-child{border-right:0}
.si-totals b{display:block;font-family:Cinzel,serif;font-size:28px;color:var(--gold-hi);line-height:1.1;font-variant-numeric:tabular-nums}
.si-totals small{font-size:11px;letter-spacing:1.5px;text-transform:uppercase;color:var(--muted)}

.ev-list{position:relative;display:grid;gap:12px}
.ev{display:grid;grid-template-columns:64px 1fr 190px 150px;gap:18px;align-items:center;padding:16px 20px}
.ev-cn{
  width:58px;height:58px;display:grid;place-items:center;border-radius:50%;
  font-family:"Ma Shan Zheng",serif;font-size:20px;color:var(--gold-hi);line-height:1;text-align:center;
  background:radial-gradient(circle,rgba(179,38,30,.35),rgba(0,0,0,.2) 70%);border:1px solid var(--line);
}
.ev h3{font-family:Cinzel,serif;font-size:19px;color:var(--gold-hi);display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.ev p{font-size:13.5px;color:var(--muted)}
.ev-when b{display:block;font-size:14px;color:var(--text)}
.ev-when span{font-family:Cinzel,serif;font-size:18px;color:var(--gold-hi)}
.ev-count{text-align:right}
.ev-count small{display:block;font-size:10.5px;letter-spacing:1.5px;text-transform:uppercase;color:var(--muted)}
.ev-count b{font-family:Cinzel,serif;font-size:18px;color:var(--text);font-variant-numeric:tabular-nums}
.ev.live{border-color:rgba(79,176,138,.6);background:linear-gradient(90deg,rgba(79,176,138,.12),var(--panel) 60%)}
.ev.live .ev-count b{color:#7fd6b2}
.ev-live{font:700 11px "Noto Sans",sans-serif;letter-spacing:1px;text-transform:uppercase;color:#7fd6b2;padding:3px 8px;border:1px solid rgba(79,176,138,.5);border-radius:20px}

.class-chart{padding:22px 24px;display:grid;gap:10px;max-width:860px;margin:0 auto}
.cc-row{display:grid;grid-template-columns:150px 1fr 48px;gap:14px;align-items:center;outline:none;padding:2px 0}
.cc-name{font-size:14px;color:var(--text)}
.cc-track{height:16px;display:block;background:rgba(255,255,255,.03);border-radius:0 4px 4px 0}
.cc-bar{display:block;height:100%;background:var(--gold);border-radius:0 4px 4px 0;transition:background .15s}
.cc-row:hover .cc-bar,.cc-row:focus .cc-bar{background:var(--gold-hi)}
.cc-val{font-family:Cinzel,serif;color:var(--gold-hi);text-align:right;font-variant-numeric:tabular-nums}

.chart-tip{
  position:fixed;z-index:200;pointer-events:none;padding:6px 10px;border-radius:3px;font-size:12.5px;
  background:#0b0806;color:var(--text);border:1px solid var(--gold-lo);box-shadow:0 6px 18px rgba(0,0,0,.5);white-space:pre-line;max-width:280px;line-height:1.5;
}
.alert-panel{padding:20px}

@media (max-width:1024px){
  .si-status{grid-template-columns:1fr 1fr}
  .si-grid{grid-template-columns:1fr}
  .si-totals{grid-template-columns:repeat(3,1fr)}
  .si-totals>div:nth-child(3){border-right:0}
  .si-totals>div:nth-child(-n+3){border-bottom:1px solid var(--line)}
  .ev{grid-template-columns:58px 1fr;row-gap:10px}
  .ev-when,.ev-count{grid-column:2}
  .ev-count{text-align:left}
}
@media (max-width:620px){
  .si-status{grid-template-columns:1fr}
  .si-totals{grid-template-columns:1fr 1fr}
  .si-totals>div{border-right:0;border-bottom:1px solid var(--line)}
  .si-totals>div:nth-child(odd){border-right:1px solid var(--line)}
  .si-totals>div:nth-last-child(-n+2){border-bottom:0}
  .ev{grid-template-columns:1fr;padding:16px}
  .ev-cn{display:none}
  .ev-when,.ev-count{grid-column:1}
  .cc-row{grid-template-columns:110px 1fr 36px;gap:10px}
  .chart24{padding:18px 12px 14px}
}

.status-dot.off{background:var(--red-hi);box-shadow:0 0 8px var(--red-hi)}

/* ---------- ranking ---------- */
.rk-section{padding:50px 0 84px}
.rk-wrap{position:relative}
.rk-tabs{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;margin-bottom:22px}
.rk-tabs a{
  display:flex;align-items:center;gap:10px;padding:12px 22px;border:1px solid var(--line);border-radius:var(--radius);
  background:rgba(0,0,0,.35);font:700 14px Cinzel,serif;letter-spacing:1.5px;text-transform:uppercase;color:var(--muted);transition:all .2s;
}
.rk-tabs a:hover{color:var(--gold-hi);border-color:var(--gold-lo)}
.rk-tabs a.on{color:#2a1a06;background:linear-gradient(180deg,var(--gold-hi),var(--gold) 55%,var(--gold-lo));border-color:var(--gold)}
.rk-tab-cn{font-family:"Ma Shan Zheng",serif;font-size:18px;letter-spacing:0;color:var(--red-hi);text-transform:none}
.rk-tabs a.on .rk-tab-cn{color:#7e1912}
.rk-filter{display:flex;justify-content:center;align-items:center;gap:10px;margin-bottom:26px}
.rk-filter label{font:700 12px Cinzel,serif;letter-spacing:1.5px;text-transform:uppercase;color:var(--gold-hi)}
.rk-filter select{
  height:40px;padding:0 36px 0 12px;border-radius:var(--radius);background:rgba(0,0,0,.5);color:var(--text);border:1px solid var(--line);
  font:14px "Noto Sans",sans-serif;cursor:pointer;appearance:none;
  background-image:linear-gradient(45deg,transparent 50%,var(--gold) 50%),linear-gradient(135deg,var(--gold) 50%,transparent 50%);
  background-position:calc(100% - 18px) 17px,calc(100% - 13px) 17px;background-size:5px 5px;background-repeat:no-repeat;
}
.rk-filter select:focus{outline:none;border-color:var(--gold)}
.rk-filter option{background:#1a130d}

.podium{display:grid;grid-template-columns:1fr 1.15fr 1fr;gap:18px;align-items:end;margin-bottom:26px}
.pod{
  position:relative;text-align:center;padding:26px 18px 22px;border-radius:6px;
  background:linear-gradient(180deg,var(--panel-2),var(--panel));border:1px solid var(--line);
}
.pod-1{padding-top:34px;padding-bottom:30px;border-color:var(--gold);box-shadow:0 0 40px rgba(217,173,85,.18)}
.pod-medal{
  position:absolute;top:-18px;left:50%;transform:translateX(-50%);width:38px;height:38px;display:grid;place-items:center;border-radius:50%;
  font:900 17px Cinzel,serif;color:#1d1405;box-shadow:0 4px 14px rgba(0,0,0,.5);
}
.pod-1 .pod-medal{background:linear-gradient(180deg,#fff0b8,var(--gold) 55%,var(--gold-lo));width:44px;height:44px;top:-22px;font-size:20px}
.pod-2 .pod-medal{background:linear-gradient(180deg,#f2f2f2,#9c9c9c)}
.pod-3 .pod-medal{background:linear-gradient(180deg,#f0b57d,#8a5022)}
.pod-glyph{
  width:74px;height:74px;margin:8px auto 12px;display:grid;place-items:center;border-radius:50%;
  font-family:"Ma Shan Zheng",serif;font-size:40px;color:var(--gold-hi);
  background:radial-gradient(circle,rgba(179,38,30,.4),rgba(0,0,0,.25) 70%);border:1px solid var(--gold-lo);
}
.pod-1 .pod-glyph{width:90px;height:90px;font-size:50px;border-color:var(--gold);box-shadow:0 0 24px rgba(217,173,85,.25)}
.pod-name{font-family:Cinzel,serif;font-weight:700;font-size:19px;color:var(--text);word-break:break-word}
.pod-1 .pod-name{font-size:23px;color:var(--gold-hi)}
.pod-sub{font-size:12.5px;color:var(--muted);margin-top:2px}
.pod-val{margin-top:14px;padding-top:12px;border-top:1px solid var(--line)}
.pod-val b{display:block;font-family:Cinzel,serif;font-size:26px;color:var(--gold-hi);line-height:1.1}
.pod-1 .pod-val b{font-size:32px}
.pod-val small{font-size:11px;letter-spacing:1.5px;text-transform:uppercase;color:var(--muted)}

.rk-table td{vertical-align:middle}
.rb{display:inline-block;font:700 10.5px "Noto Sans",sans-serif;color:#ffb3a8;background:rgba(179,38,30,.25);border:1px solid rgba(224,64,47,.4);padding:0 5px;border-radius:2px;vertical-align:2px}
.on-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--jade);box-shadow:0 0 6px var(--jade);margin-right:7px;vertical-align:1px}
.title-tag{display:inline-block;font-size:12px;font-weight:700;padding:2px 9px;border-radius:2px;border:1px solid var(--line);color:var(--gold-hi);background:rgba(217,173,85,.08)}
.title-tag.t-rei{color:#2a1a06;background:linear-gradient(180deg,var(--gold-hi),var(--gold));border-color:var(--gold)}
.title-tag.t-principe{color:#f3d48a;border-color:var(--gold)}
.title-tag.t-duque{color:#e7b7ff;border-color:rgba(190,120,230,.5);background:rgba(160,90,210,.12)}
.title-tag.t-plebeu{color:var(--muted)}
.rk-empty{display:flex;align-items:center;gap:16px;justify-content:center;padding:36px 20px;color:var(--muted)}
.rk-empty .cn-small{width:52px;height:52px;display:grid;place-items:center;border-radius:50%;font-family:"Ma Shan Zheng",serif;font-size:28px;color:var(--gold);border:1px solid var(--line)}

@media (max-width:760px){
  .podium{grid-template-columns:1fr;gap:10px}
  .pod-1{order:-1}
  .pod,.pod-1{display:grid;grid-template-columns:auto 1fr auto;grid-template-rows:auto auto;column-gap:12px;align-items:center;text-align:left;padding:12px 14px 12px 48px}
  .pod-medal,.pod-1 .pod-medal{top:50%;left:10px;transform:translateY(-50%);width:28px;height:28px;font-size:13px}
  .pod-glyph,.pod-1 .pod-glyph{grid-row:1 / span 2;width:46px;height:46px;font-size:24px;margin:0}
  .pod-name,.pod-1 .pod-name{font-size:16px;align-self:end}
  .pod-sub{grid-column:2;align-self:start}
  .pod-val{grid-column:3;grid-row:1 / span 2;margin:0;padding:0;border:0;text-align:right}
  .pod-val b,.pod-1 .pod-val b{font-size:22px}
  .rk-tabs a{padding:10px 14px;font-size:12.5px}
}

/* ---------- login + área do jogador ---------- */
.login-wrap{position:relative;max-width:480px}
.nav-cta .btn.on{color:#2a1a06;background:linear-gradient(180deg,var(--gold-hi),var(--gold))}
.page-hero-sm{padding:50px 0 44px}
.page-hero p b{color:var(--gold-hi)}
.acc-section{padding:40px 0 84px}
.acc-grid{position:relative;display:grid;grid-template-columns:300px 1fr;gap:24px;align-items:start}
.acc-grid>*{min-width:0}
.acc-side{display:grid;gap:16px}
.acc-email{max-width:170px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ok-msg{padding:12px 14px;border-radius:var(--radius);background:rgba(79,176,138,.12);border:1px solid rgba(79,176,138,.45);color:#9fe3c6;font-size:14px}
.acc-pw summary{list-style:none;cursor:pointer}
.acc-pw summary::-webkit-details-marker{display:none}
.acc-pw summary span{color:var(--gold);transition:transform .2s}
.acc-pw[open] summary span{transform:rotate(180deg)}
.acc-pw .reg-body{padding:18px}
.acc-pw .btn-block{margin-top:12px}

.char-tabs{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:16px}
.char-tab{
  display:flex;align-items:center;gap:10px;padding:8px 14px 8px 8px;border-radius:40px;
  border:1px solid var(--line);background:rgba(0,0,0,.35);transition:all .2s;
}
.char-tab:hover{border-color:var(--gold-lo)}
.char-tab.on{border-color:var(--gold);background:linear-gradient(90deg,rgba(217,173,85,.18),rgba(0,0,0,.35));box-shadow:0 0 18px rgba(217,173,85,.12)}
.ct-glyph{width:36px;height:36px;display:grid;place-items:center;border-radius:50%;font-family:"Ma Shan Zheng",serif;font-size:20px;color:var(--gold-hi);background:rgba(179,38,30,.3);border:1px solid var(--gold-lo)}
.ct-text b{display:block;font-size:14px;color:var(--text)}
.ct-text small{font-size:11.5px;color:var(--muted)}

.char-sheet{padding:0}
.cs-head{display:flex;align-items:center;gap:18px;padding:22px 24px;border-bottom:1px solid var(--line);flex-wrap:wrap}
.cs-glyph{
  flex:none;width:72px;height:72px;display:grid;place-items:center;border-radius:50%;font-family:"Ma Shan Zheng",serif;font-size:40px;color:var(--gold-hi);
  background:radial-gradient(circle,rgba(179,38,30,.45),rgba(0,0,0,.25) 70%);border:1px solid var(--gold);box-shadow:0 0 22px rgba(217,173,85,.2);
}
.cs-title{flex:1;min-width:200px}
.cs-title h2{font-family:Cinzel,serif;font-size:28px;color:var(--gold-hi);line-height:1.1;margin-bottom:8px;word-break:break-word}
.cs-tags{display:flex;gap:6px;flex-wrap:wrap}
.cs-status{font-size:13px;color:var(--muted);padding:6px 12px;border:1px solid var(--line);border-radius:20px}
.cs-status.on{color:#7fd6b2;border-color:rgba(79,176,138,.5)}
.cs-stats{display:grid;grid-template-columns:repeat(6,1fr);border-bottom:1px solid var(--line)}
.cs-stats>div{padding:14px 16px;border-right:1px solid var(--line);min-width:0}
.cs-stats>div:last-child{border-right:0}
.cs-stats small{display:block;font-size:10.5px;letter-spacing:1.5px;text-transform:uppercase;color:var(--muted)}
.cs-stats b{font-size:15.5px;color:var(--text);display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cs-body{display:grid;grid-template-columns:240px 1fr;gap:0;border-bottom:1px solid var(--line)}
.cs-body h3,.cs-inv h3{font:700 13px Cinzel,serif;letter-spacing:2px;text-transform:uppercase;color:var(--gold-hi);margin-bottom:10px;display:flex;align-items:center;gap:10px}
.cs-inv h3 small{font-family:"Noto Sans";letter-spacing:0;color:var(--muted);font-weight:600}
.cs-wh{margin-left:auto;font:600 12px "Noto Sans",sans-serif;letter-spacing:0;text-transform:none;color:var(--muted)}
.cs-attrs{padding:20px;border-right:1px solid var(--line)}
.cs-attrs .info-list{padding:0}
.cs-equip{padding:20px}
.equip-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(118px,1fr));gap:8px}
.cs-inv{padding:20px}
.inv-grid{display:grid;grid-template-columns:repeat(10,1fr);gap:6px}

.slot{
  position:relative;min-height:64px;padding:6px 7px;border-radius:4px;overflow:hidden;cursor:default;outline:none;
  background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(0,0,0,.35));border:1px solid rgba(212,166,74,.18);
  display:flex;flex-direction:column;justify-content:flex-end;transition:border-color .15s,transform .15s;
}
.inv-grid .slot{min-height:54px;padding:4px 5px}
.slot.empty{background:rgba(0,0,0,.25);border-style:dashed;border-color:rgba(212,166,74,.1)}
.slot:not(.empty):hover,.slot:not(.empty):focus{border-color:var(--gold);transform:translateY(-1px)}
.slot-label{position:absolute;top:5px;left:7px;font-size:9.5px;letter-spacing:1px;text-transform:uppercase;color:rgba(168,152,125,.65)}
.slot-name{font-size:11.5px;font-weight:600;line-height:1.2;color:var(--text);overflow-wrap:break-word}
.inv-grid .slot-name{font-size:10px;font-weight:500;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.slot-plus{position:absolute;top:4px;right:6px;font:700 11px Cinzel,serif;color:#ffd77a}
.slot-stack{position:absolute;top:3px;right:5px;font-size:10px;font-weight:700;color:var(--text)}
.slot-gems{position:absolute;top:22px;right:6px;display:flex;gap:3px}
.gem{width:8px;height:8px;border-radius:50%;box-shadow:0 0 4px currentColor;background:currentColor}
.gem.g0{color:#ff9b3d}.gem.g1{color:#e0402f}.gem.g2{color:#ff5fa0}.gem.g3{color:#9be37a}.gem.g4{color:#e8e8e8}
.gem.g5{color:#b178ff}.gem.g6{color:#cfd8ff}.gem.g7{color:#6fc7a4}.gem.g10{color:#7fb6ff}.gem.g12{color:#ffd700}
.gem.gx{background:transparent;border:1px solid rgba(255,255,255,.4);box-shadow:none}
.q-super{border-color:rgba(255,200,80,.55);background:linear-gradient(180deg,rgba(255,200,80,.14),rgba(0,0,0,.35))}
.q-super .slot-name{color:#ffd77a}
.q-elite{border-color:rgba(190,120,230,.5)}
.q-elite .slot-name{color:#e2b8ff}
.q-unique{border-color:rgba(110,170,255,.45)}
.q-unique .slot-name{color:#a9caff}
.q-refined{border-color:rgba(120,200,150,.4)}
.q-refined .slot-name{color:#a7e3bf}

@media (max-width:1024px){
  .acc-grid{grid-template-columns:1fr}
  .acc-side{grid-template-columns:1fr 1fr;align-items:start}
  .acc-side>form{grid-column:1/-1}
  .cs-stats{grid-template-columns:repeat(3,1fr)}
  .cs-stats>div:nth-child(3){border-right:0}
  .cs-stats>div:nth-child(-n+3){border-bottom:1px solid var(--line)}
  .inv-grid{grid-template-columns:repeat(8,1fr)}
}
@media (max-width:700px){
  .acc-side{grid-template-columns:1fr}
  .cs-body{grid-template-columns:1fr}
  .cs-attrs{border-right:0;border-bottom:1px solid var(--line)}
  .cs-stats{grid-template-columns:1fr 1fr}
  .cs-stats>div{border-right:0;border-bottom:1px solid var(--line)}
  .cs-stats>div:nth-child(odd){border-right:1px solid var(--line)}
  .cs-stats>div:nth-last-child(-n+2){border-bottom:0}
  .inv-grid{grid-template-columns:repeat(5,1fr)}
  .equip-grid{grid-template-columns:repeat(2,1fr)}
  .cs-head{padding:18px 16px}
  .cs-equip,.cs-inv,.cs-attrs{padding:16px}
}

/* ---------- senha do armazém (Minha Conta) ---------- */
.cs-wh-lock{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:14px 24px;border-bottom:1px solid var(--line);background:rgba(0,0,0,.18)}
.cs-wh-lock.locked{background:linear-gradient(90deg,rgba(217,173,85,.08),rgba(0,0,0,.18))}
.wh-ico{font-size:22px;filter:grayscale(.3)}
.wh-text b{display:block;font-size:14px;color:var(--gold-hi)}
.wh-text small{font-size:12.5px;color:var(--muted)}
.wh-note{margin-left:auto;font-size:12.5px;color:#f2c38f}
.wh-form{margin-left:auto;max-width:360px;width:100%}
.wh-form summary{list-style:none;cursor:pointer;display:block;text-align:center;padding:9px 14px;font-size:12px}
.wh-form summary::-webkit-details-marker{display:none}
.wh-form[open] summary{display:none}
.wh-form form{display:grid;gap:10px}
.wh-form p{font-size:13.5px;color:#d6c8ad}
.wh-form .alert{margin:0}
.wh-form input{width:100%;height:42px;padding:0 46px 0 12px;border-radius:var(--radius);background:rgba(0,0,0,.45);border:1px solid var(--line);color:var(--text);font:14px "Noto Sans",sans-serif}
.wh-form input:focus{outline:none;border-color:var(--gold)}
@media (max-width:700px){ .cs-wh-lock{padding:14px 16px} .wh-note,.wh-form{margin-left:0;max-width:none} }

/* ---------- home com dados reais ---------- */
.rank-tabs a{
  border:1px solid var(--line);color:var(--muted);font:700 12px Cinzel,serif;letter-spacing:1.5px;text-transform:uppercase;
  padding:8px 14px;border-radius:2px;transition:all .2s;
}
.rank-tabs a:hover{color:var(--gold-hi);border-color:var(--gold-lo)}
.rank-tabs a.on{background:rgba(217,173,85,.12);color:var(--gold-hi);border-color:var(--gold-lo)}
.rank-more{padding:14px 20px;border-top:1px solid rgba(212,166,74,.08);text-align:right;font-size:14px}
.rk-home-empty{padding:26px 20px;color:var(--muted);text-align:center}
.ev-mini{font-size:13px;color:#d6c8ad;margin:-4px 0 10px}
.ev-mini-count{display:flex;align-items:baseline;justify-content:space-between;gap:10px;background:rgba(0,0,0,.45);border:1px solid var(--line);padding:8px 12px}
.ev-mini-count span{font-size:10.5px;letter-spacing:1.5px;text-transform:uppercase;color:var(--muted)}
.ev-mini-count b{font-family:Cinzel,serif;font-size:22px;color:var(--gold-hi);font-variant-numeric:tabular-nums}

/* =========================================================
   ANIMAÇÕES
   Só valem com html.anim (posto pelo site.js). Sem JS, ou com "reduzir movimento" no sistema, tudo fica parado e visível.
   ========================================================= */

/* ---- revelar ao rolar ---- */
html.anim .reveal{opacity:0;transform:translateY(26px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.2,1)}
html.anim .reveal.in{opacity:1;transform:none}
html.anim .reveal.reveal-zoom{transform:scale(.94)}
html.anim .reveal.reveal-zoom.in{transform:none}

/* ---- entrada do topo da home ---- */
html.anim .hero-content>*{opacity:0;animation:heroIn .9s cubic-bezier(.2,.7,.2,1) forwards}
html.anim .hero-content>*:nth-child(1){animation-delay:.15s}
html.anim .hero-content>*:nth-child(2){animation-delay:.3s}
html.anim .hero-content>*:nth-child(3){animation-delay:.5s}
html.anim .hero-content>*:nth-child(4){animation-delay:.65s}
html.anim .hero-content>*:nth-child(5){animation-delay:.8s}
@keyframes heroIn{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}
html.anim .hero-glyph{animation:glyphIn 2.2s ease-out both}
@keyframes glyphIn{from{opacity:0;transform:translateY(-50%) scale(1.15)}to{transform:translateY(-50%)}}
html.anim .page-hero .wrap>*{opacity:0;animation:heroIn .8s cubic-bezier(.2,.7,.2,1) forwards}
html.anim .page-hero .wrap>*:nth-child(2){animation-delay:.12s}
html.anim .page-hero .wrap>*:nth-child(3){animation-delay:.24s}

/* ---- brilho dourado que passa pelo título ---- */
html.anim .hero h1,html.anim .page-hero h1{
  background-image:
    linear-gradient(110deg,transparent 42%,rgba(255,250,230,.75) 50%,transparent 58%),
    linear-gradient(180deg,#fff2cf 0%,var(--gold-hi) 40%,var(--gold) 70%,var(--gold-lo));
  background-size:250% 100%,100% 100%;
  background-repeat:no-repeat;
  background-position:150% 0,0 0;
}
/* entrada + brilho juntos (o :nth-child(n) só aumenta a prioridade sobre as regras de entrada acima) */
html.anim .hero-content>h1:nth-child(n),html.anim .page-hero .wrap>h1:nth-child(n){
  animation-name:heroIn,shine;animation-duration:.9s,6s;animation-delay:.3s,1.8s;
  animation-iteration-count:1,infinite;animation-fill-mode:forwards,none;
  animation-timing-function:cubic-bezier(.2,.7,.2,1),ease-in-out;
}
html.anim .page-hero .wrap>h1:nth-child(n){animation-delay:.12s,1.4s}
@keyframes shine{0%{background-position:150% 0,0 0}35%,100%{background-position:-60% 0,0 0}}

/* ---- brasas subindo (banner da home e topo das páginas) ---- */
.embers{position:absolute;inset:0;pointer-events:none;overflow:hidden;z-index:1}
.ember{
  position:absolute;bottom:-12px;width:4px;height:4px;border-radius:50%;
  background:radial-gradient(circle,#fff1c9 0%,#ffb44a 40%,rgba(224,64,47,0) 72%);
  box-shadow:0 0 8px 2px rgba(255,140,40,.55);
  opacity:0;animation:emberRise linear infinite;
}
@keyframes emberRise{
  0%{opacity:0;transform:translate(0,0) scale(1)}
  10%{opacity:.95}
  50%{transform:translate(var(--drift,20px),-45vh) scale(.85)}
  85%{opacity:.6}
  100%{opacity:0;transform:translate(calc(var(--drift,20px) * -.6),-92vh) scale(.4)}
}

/* ---- brilho nos botões ---- */
.btn{position:relative;overflow:hidden;isolation:isolate}
.btn::after{
  content:"";position:absolute;top:0;left:-60%;width:40%;height:100%;z-index:-1;pointer-events:none;
  background:linear-gradient(110deg,transparent,rgba(255,255,255,.35),transparent);transform:skewX(-20deg);
}
html.anim .btn:hover::after{animation:btnShine .7s ease}
@keyframes btnShine{to{left:130%}}

/* ---- cantos dourados dos painéis crescem no hover ---- */
.panel::before,.panel::after{transition:width .35s ease,height .35s ease,border-color .35s ease}
.panel:hover::before,.panel:hover::after{width:30px;height:30px;border-color:var(--gold-hi)}

/* ---- selo do logo pulsando ---- */
html.anim .seal{animation:sealGlow 4.5s ease-in-out infinite}
@keyframes sealGlow{
  0%,100%{box-shadow:inset 0 0 0 2px rgba(0,0,0,.25),0 0 0 1px var(--gold-lo)}
  50%{box-shadow:inset 0 0 0 2px rgba(0,0,0,.25),0 0 0 1px var(--gold),0 0 16px rgba(224,64,47,.55)}
}
.brand:hover .seal{transform:rotate(0deg) scale(1.06);transition:transform .3s ease}

/* ---- detalhes ---- */
html.anim .divider i{animation:spinDia 9s linear infinite}
@keyframes spinDia{to{transform:rotate(405deg)}}
html.anim .pod.in .pod-medal{animation:medalDrop .7s cubic-bezier(.3,1.6,.5,1) .25s both}
@keyframes medalDrop{from{opacity:0;transform:translate(-50%,-30px)}to{opacity:1}}
html.anim .pod-1.in .pod-glyph{animation:glowGold 3.5s ease-in-out .8s infinite}
@keyframes glowGold{50%{box-shadow:0 0 34px rgba(217,173,85,.45)}}

@media (prefers-reduced-motion: reduce){
  html.anim .reveal{opacity:1!important;transform:none!important}
  html.anim *,html.anim *::before,html.anim *::after{animation:none!important;transition:none!important}
  html.anim .hero-content>*,html.anim .page-hero .wrap>*{opacity:1}
  .embers{display:none}
}

/* ---------- regras ---------- */
.rules-section{padding:50px 0 84px}
.rules-grid{position:relative;display:grid;grid-template-columns:260px 1fr;gap:28px;align-items:start}
.rules-grid>*{min-width:0}
.rules-nav{position:sticky;top:92px}
.rules-nav ol{list-style:none;padding:10px 12px 6px}
.rules-nav a{display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:3px;font-size:14px;color:var(--text);transition:background .2s,color .2s}
.rules-nav a:hover{background:rgba(217,173,85,.08);color:var(--gold-hi)}
.rules-nav a span{flex:none;width:24px;height:24px;display:grid;place-items:center;border-radius:50%;border:1px solid var(--line);font:700 11px Cinzel,serif;color:var(--gold)}
.rules-updated{padding:4px 22px 16px;font-size:12px;color:var(--muted)}
.rules-main{display:grid;gap:18px}
.rules-intro{display:flex;gap:16px;align-items:center;padding:20px 22px}
.rules-intro .cn-small{flex:none;width:56px;height:56px;display:grid;place-items:center;border-radius:50%;font-family:"Ma Shan Zheng",serif;font-size:30px;color:var(--gold-hi);background:rgba(179,38,30,.3);border:1px solid var(--gold-lo)}
.rules-intro p{color:#d6c8ad;font-size:15px}
.rule-block{scroll-margin-top:96px;padding:0}
.rule-block header{display:flex;align-items:center;gap:16px;padding:18px 22px;border-bottom:1px solid var(--line)}
.rule-glyph{
  flex:none;width:54px;height:54px;display:grid;place-items:center;border-radius:6px;transform:rotate(-4deg);
  font-family:"Ma Shan Zheng",serif;font-size:30px;color:#f7e6c4;background:var(--red);box-shadow:0 0 0 1px var(--gold-lo),0 6px 18px rgba(179,38,30,.3);
}
.rule-block header small{font-size:11px;letter-spacing:2px;text-transform:uppercase;color:var(--red-hi);font-weight:700}
.rule-block header h2{font-family:Cinzel,serif;font-size:22px;color:var(--gold-hi);line-height:1.15}
.rule-list{list-style:none;padding:8px 22px 14px}
.rule-list li{display:flex;gap:14px;padding:12px 0;border-bottom:1px dashed rgba(212,166,74,.12)}
.rule-list li:last-child{border-bottom:0}
.rule-n{flex:none;min-width:34px;font:700 13px Cinzel,serif;color:var(--gold);padding-top:2px}
.rule-list p{color:#e2d6bf;font-size:15px;line-height:1.6}
.rules-cta{text-align:center;padding:26px 10px 0}
.rules-cta p{color:var(--muted);margin-bottom:16px}
@media (max-width:900px){
  .rules-grid{grid-template-columns:1fr}
  .rules-nav{position:static}
  .rules-nav ol{display:grid;grid-template-columns:1fr 1fr;gap:2px}
}
@media (max-width:520px){
  .rules-nav ol{grid-template-columns:1fr}
  .rule-block header,.rule-list{padding-left:16px;padding-right:16px}
}

/* ---------- download "em breve" ---------- */
.dl-soon-box{padding:16px 18px;margin-bottom:16px;border-left:3px solid var(--gold);background:rgba(217,173,85,.07)}
.dl-soon-box b{display:block;color:var(--gold-hi);font-size:15px;margin-bottom:2px}
.dl-soon-box p{color:#d6c8ad;font-size:14px}
