/* =========================================================
   EPIC · HUD — interfaz de juego para la web del servidor
   ========================================================= */

/* ---------- Tipografías (autoalojadas) ---------- */
@font-face{font-family:"Cinzel";font-weight:600;font-display:swap;src:url(../fonts/cinzel-latin-600-normal.woff2) format("woff2")}
@font-face{font-family:"Cinzel";font-weight:700;font-display:swap;src:url(../fonts/cinzel-latin-700-normal.woff2) format("woff2")}
@font-face{font-family:"Cinzel";font-weight:900;font-display:swap;src:url(../fonts/cinzel-latin-900-normal.woff2) format("woff2")}
@font-face{font-family:"Cinzel Decorative";font-weight:900;font-display:swap;src:url(../fonts/cinzel-decorative-latin-900-normal.woff2) format("woff2")}
@font-face{font-family:"Rajdhani";font-weight:500;font-display:swap;src:url(../fonts/rajdhani-latin-500-normal.woff2) format("woff2")}
@font-face{font-family:"Rajdhani";font-weight:600;font-display:swap;src:url(../fonts/rajdhani-latin-600-normal.woff2) format("woff2")}
@font-face{font-family:"Rajdhani";font-weight:700;font-display:swap;src:url(../fonts/rajdhani-latin-700-normal.woff2) format("woff2")}
@font-face{font-family:"Inter";font-weight:400;font-display:swap;src:url(../fonts/inter-latin-400-normal.woff2) format("woff2")}
@font-face{font-family:"Inter";font-weight:500;font-display:swap;src:url(../fonts/inter-latin-500-normal.woff2) format("woff2")}
@font-face{font-family:"Inter";font-weight:600;font-display:swap;src:url(../fonts/inter-latin-600-normal.woff2) format("woff2")}
@font-face{font-family:"Inter";font-weight:700;font-display:swap;src:url(../fonts/inter-latin-700-normal.woff2) format("woff2")}
@font-face{font-family:"Crimson Pro";font-weight:400;font-style:italic;font-display:swap;src:url(../fonts/crimson-pro-latin-400-italic.woff2) format("woff2")}
@font-face{font-family:"Crimson Pro";font-weight:600;font-style:italic;font-display:swap;src:url(../fonts/crimson-pro-latin-600-italic.woff2) format("woff2")}

:root{
  --bg0:#04060c; --bg1:#0a0f1b; --bg2:#101728; --glass:rgba(10,15,27,.82);
  --gold:#f0b653; --gold-hi:#ffe3a3; --gold-lo:#9c6a1e;
  --ember:#ff6a2b; --hp:#ff4257; --mp:#42d4ff; --xp:#43e6a2; --arc:#8f7bff;
  --text:#e8ecf6; --muted:#8e9ab8; --faint:#5d6886;
  --line:rgba(240,182,83,.26); --line-hi:rgba(240,182,83,.6); --line-cy:rgba(66,212,255,.35);
  --f-ui:"Rajdhani","Inter",system-ui,sans-serif; --f-body:"Inter",system-ui,-apple-system,"Segoe UI",sans-serif;
  --f-head:"Cinzel",Georgia,serif; --f-deco:"Cinzel Decorative","Cinzel",Georgia,serif; --f-lore:"Crimson Pro",Georgia,serif;
  --nav-h:68px; --cut:14px;
  --poly:polygon(var(--cut) 0,calc(100% - var(--cut)) 0,100% var(--cut),100% calc(100% - var(--cut)),calc(100% - var(--cut)) 100%,var(--cut) 100%,0 calc(100% - var(--cut)),0 var(--cut));
  --poly-in:polygon(calc(var(--cut) - .4px) 0,calc(100% - var(--cut) + .4px) 0,100% calc(var(--cut) - .4px),100% calc(100% - var(--cut) + .4px),calc(100% - var(--cut) + .4px) 100%,calc(var(--cut) - .4px) 100%,0 calc(100% - var(--cut) + .4px),0 calc(var(--cut) - .4px));
  --slant:polygon(14px 0,100% 0,calc(100% - 14px) 100%,0 100%);
  --hex:polygon(25% 0,75% 0,100% 50%,75% 100%,25% 100%,0 50%);
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body.epic{margin:0;background:var(--bg0);color:var(--text);font:400 16px/1.65 var(--f-body);-webkit-font-smoothing:antialiased;overflow-x:hidden}
body.epic img{max-width:100%}
body.epic a{color:var(--gold-hi);text-decoration:none;transition:color .2s}
body.epic a:hover{color:#fff}
::selection{background:var(--gold);color:#12100a}
.wrap{width:min(1240px,100% - 48px);margin-inline:auto}

/* ---------- Panel HUD (cristal con esquinas biseladas) ---------- */
.hud{position:relative;isolation:isolate;background:linear-gradient(145deg,var(--gold) 0%,rgba(240,182,83,.35) 38%,rgba(66,212,255,.28) 100%);clip-path:var(--poly)}
.hud::before{content:"";position:absolute;inset:1px;z-index:-1;clip-path:var(--poly-in);background:linear-gradient(180deg,rgba(18,26,44,.96),rgba(8,12,22,.97))}
.hud::after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;clip-path:var(--poly-in);background:repeating-linear-gradient(0deg,rgba(255,255,255,.018) 0 1px,transparent 1px 3px)}
.hud-title{display:flex;align-items:center;gap:12px;margin:0 0 1.1em;font:700 .86rem/1 var(--f-ui);letter-spacing:.26em;text-transform:uppercase;color:var(--gold-hi)}
.hud-title::before{content:"";width:9px;height:9px;background:var(--gold);transform:rotate(45deg);box-shadow:0 0 12px var(--gold)}
.hud-title::after{content:"";flex:1;height:1px;background:linear-gradient(90deg,var(--line-hi),transparent)}

/* ---------- Botones ---------- */
.btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:.7em;font:700 .92rem/1 var(--f-ui);letter-spacing:.2em;text-transform:uppercase;padding:1.05em 2em;border:0;cursor:pointer;isolation:isolate;background:none;color:var(--gold-hi) !important;white-space:nowrap;transition:transform .2s,filter .25s}
.btn::before{content:"";position:absolute;inset:0;z-index:-1;clip-path:var(--slant);background:linear-gradient(180deg,rgba(24,32,54,.9),rgba(10,14,26,.95));box-shadow:inset 0 0 0 1px var(--line-hi)}
.btn::after{content:"";position:absolute;inset:0;z-index:-1;clip-path:var(--slant);background:linear-gradient(180deg,transparent 55%,rgba(240,182,83,.18));opacity:0;transition:opacity .25s}
.btn:hover{transform:translateY(-2px);filter:drop-shadow(0 6px 16px rgba(240,182,83,.35))}
.btn:hover::after{opacity:1}
.btn.sm{font-size:.78rem;padding:.85em 1.4em}.btn.lg{font-size:1.1rem;padding:1.2em 2.6em}
.btn-gold{color:#1a1204 !important;filter:drop-shadow(0 0 14px rgba(255,140,40,.45))}
.btn-gold::before{background:linear-gradient(180deg,#fff0bd 0%,#f4bf5c 45%,#c98424 100%);box-shadow:inset 0 1px 0 rgba(255,255,255,.7),inset 0 -2px 0 rgba(120,60,0,.4)}
.btn-gold::after{background:linear-gradient(105deg,transparent 38%,rgba(255,255,255,.75) 50%,transparent 62%) no-repeat;background-size:300% 100%;background-position:130% 0;opacity:1;transition:background-position .8s}
.btn-gold:hover{filter:drop-shadow(0 0 26px rgba(255,150,50,.85))}
.btn-gold:hover::after{background-position:-30% 0}

/* ---------- Barra superior ---------- */
.nav{position:fixed;inset:0 0 auto 0;z-index:100;height:var(--nav-h);display:flex;align-items:center;gap:26px;padding:0 clamp(14px,2.6vw,36px);transition:background .3s,box-shadow .3s}
.nav::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:linear-gradient(90deg,transparent,var(--line-hi) 18%,var(--line-hi) 82%,transparent);opacity:0;transition:opacity .3s}
.nav.solid{background:linear-gradient(180deg,rgba(5,8,15,.96),rgba(5,8,15,.82));backdrop-filter:blur(14px) saturate(140%)}
.nav.solid::after{opacity:1}
.brand{display:flex;align-items:center;gap:12px;color:#fff !important}
.brand img{filter:drop-shadow(0 0 12px rgba(240,182,83,.5))}
.brand-name{font:900 1.35rem/1 var(--f-deco);letter-spacing:.08em;color:var(--gold-hi);text-transform:uppercase}
.brand-name b{font-weight:900;color:var(--ember)}
.menu{display:flex;align-items:center;gap:2px;margin-left:10px}
.top-link{position:relative;font:700 .92rem/1 var(--f-ui);letter-spacing:.2em;text-transform:uppercase;color:var(--muted) !important;background:none;border:0;padding:1.2em 1.05em;cursor:pointer;transition:color .2s}
.top-link::before{content:"";position:absolute;left:.5em;right:.5em;bottom:.55em;height:2px;background:var(--gold);box-shadow:0 0 12px var(--gold);transform:scaleX(0);transition:transform .25s}
.top-link:hover,.has-sub:hover>.top-link,.top-link.on{color:#fff !important}
.top-link:hover::before,.has-sub:hover>.top-link::before,.top-link.on::before{transform:scaleX(1)}
.chev{display:inline-block;width:.45em;height:.45em;margin-left:.45em;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:translateY(-2px) rotate(45deg)}
.has-sub{position:relative}
.sub{position:absolute;top:calc(100% - 6px);left:0;min-width:250px;padding:8px;opacity:0;visibility:hidden;transform:translateY(8px);transition:.2s;--cut:10px}
.has-sub:hover .sub,.has-sub:focus-within .sub{opacity:1;visibility:visible;transform:none}
.sub a{display:flex;align-items:center;gap:10px;padding:.75em 1em;font:600 .98rem/1.2 var(--f-ui);letter-spacing:.06em;color:var(--text) !important;transition:background .15s,padding .15s}
.sub a::before{content:"";width:6px;height:6px;background:var(--gold);transform:rotate(45deg);opacity:0;transition:opacity .15s}
.sub a:hover{background:linear-gradient(90deg,rgba(240,182,83,.16),transparent);padding-left:1.3em;color:var(--gold-hi) !important}
.sub a:hover::before{opacity:1}
.nav-right{margin-left:auto;display:flex;align-items:center;gap:16px}
.btn-ghost{color:var(--gold-hi) !important}
.chip-online{display:flex;align-items:center;gap:10px;padding:.7em 1.2em;font:700 .82rem/1 var(--f-ui);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);background:rgba(8,12,22,.7);clip-path:var(--slant);box-shadow:inset 0 0 0 1px var(--line);margin-right:4px}
.chip-online i{width:8px;height:8px;border-radius:50%;background:var(--hp);flex:none}
.chip-online.on i{background:var(--xp);animation:ping 2s infinite}
.chip-online.on b{color:var(--xp)}
@keyframes ping{70%{box-shadow:0 0 0 9px rgba(67,230,162,0)}100%{box-shadow:0 0 0 0 rgba(67,230,162,0)}}
.chip-online.on i{box-shadow:0 0 0 0 rgba(67,230,162,.7)}
.burger{display:none;margin-left:auto;width:44px;height:44px;border:1px solid var(--line);background:rgba(8,12,22,.7);cursor:pointer;position:relative;clip-path:var(--slant)}
.burger span{position:absolute;left:12px;right:12px;height:2px;background:var(--gold-hi);transition:.25s}
.burger span:nth-child(1){top:15px}.burger span:nth-child(2){top:21px}.burger span:nth-child(3){top:27px}
.burger[aria-expanded=true] span:nth-child(1){top:21px;transform:rotate(45deg)}
.burger[aria-expanded=true] span:nth-child(2){opacity:0}
.burger[aria-expanded=true] span:nth-child(3){top:21px;transform:rotate(-45deg)}

/* ---------- Escena de fondo (héroe) ---------- */
.hero{position:relative;min-height:100vh;min-height:100svh;display:flex;align-items:center;overflow:hidden;isolation:isolate;background:#05070d}
.hero-bg{position:absolute;inset:0;z-index:-1}
.layer{position:absolute;inset:0;pointer-events:none;will-change:transform}
.layer.sky{background:radial-gradient(95% 34% at 50% 58%,rgba(255,122,48,.55) 0%,rgba(200,64,60,.3) 38%,transparent 72%),linear-gradient(180deg,#03050b 0%,#0a1024 32%,#1a1840 58%,#3a2250 76%,#7c3a4c 90%,#b8573b 100%)}
.layer.stars{width:100%;height:100%;opacity:.9}
.layer.moon{inset:auto;top:12%;right:12%;width:clamp(80px,9vw,150px);aspect-ratio:1}
.layer.moon i{position:absolute;inset:0;border-radius:50%;background:radial-gradient(circle at 36% 34%,#fffaf0,#ffe9b8 38%,#e2b86b 70%,#b3803c);box-shadow:0 0 60px 14px rgba(255,214,140,.5),0 0 160px 60px rgba(255,170,70,.24)}
.layer.aurora{inset:-10% -10% 30% -10%;background:radial-gradient(40% 50% at 25% 40%,rgba(143,123,255,.28),transparent 70%),radial-gradient(35% 45% at 72% 30%,rgba(255,90,60,.18),transparent 70%),radial-gradient(40% 40% at 50% 62%,rgba(66,212,255,.1),transparent 70%);filter:blur(30px);animation:aurora 22s ease-in-out infinite alternate}
@keyframes aurora{to{transform:translate3d(4%,3%,0) scale(1.1);opacity:.75}}
.layer.runes{inset:auto;left:68%;top:48%;width:min(900px,110vw);aspect-ratio:1;margin:calc(min(900px,110vw)/-2) 0 0 calc(min(900px,110vw)/-2);opacity:.17;mix-blend-mode:screen}
.layer.runes img{width:100%;animation:spin 160s linear infinite;filter:drop-shadow(0 0 14px rgba(240,182,83,.9))}
@keyframes spin{to{transform:rotate(360deg)}}
.layer.mtn{left:-7%;right:-7%;background-repeat:no-repeat;background-size:cover;background-position:center bottom}
.layer.dragons{overflow:hidden}
.dragon{position:absolute;left:0;width:140px;opacity:.85;animation:fly 50s linear infinite}
.dragon.d1{top:15%;width:150px}.dragon.d2{top:26%;width:86px;opacity:.65;animation-duration:74s;animation-delay:-24s}.dragon.d3{top:9%;width:62px;opacity:.5;animation-duration:92s;animation-delay:-52s}
@keyframes fly{0%{transform:translate3d(-25vw,0,0) scaleY(1)}15%{transform:translate3d(10vw,-14px,0) scaleY(.9)}30%{transform:translate3d(36vw,10px,0) scaleY(1)}45%{transform:translate3d(62vw,-12px,0) scaleY(.92)}60%{transform:translate3d(86vw,8px,0) scaleY(1)}100%{transform:translate3d(125vw,-6px,0) scaleY(1)}}
.layer.fog{background:radial-gradient(ellipse 28% 60% at 10% 70%,rgba(160,170,230,.12),transparent 70%),radial-gradient(ellipse 32% 50% at 42% 60%,rgba(255,170,120,.1),transparent 70%),radial-gradient(ellipse 30% 55% at 78% 72%,rgba(150,160,240,.12),transparent 70%);width:200%;animation:fogmove 70s linear infinite}
.layer.fog.f2{animation-duration:46s;animation-direction:reverse;filter:blur(6px);top:22%}
@keyframes fogmove{to{transform:translate3d(-50%,0,0)}}
.layer.embers{width:100%;height:100%;mix-blend-mode:screen}
.layer.flash{background:radial-gradient(60% 50% at 70% 20%,rgba(190,210,255,.5),transparent 70%);opacity:0}
.layer.flash.go{animation:flash 1.1s ease-out}
@keyframes flash{0%{opacity:0}8%{opacity:.8}16%{opacity:.15}26%{opacity:.65}100%{opacity:0}}
.layer.vignette{background:linear-gradient(90deg,rgba(3,5,10,.85) 0%,rgba(3,5,10,.45) 42%,transparent 70%),radial-gradient(75% 26% at 50% 100%,rgba(255,112,56,.18),transparent 72%),linear-gradient(180deg,rgba(3,5,10,.6) 0%,transparent 22%,transparent 72%,rgba(4,6,12,.9) 100%)}

/* ---------- Héroe (landing) ---------- */
.hero-grid{position:relative;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(340px,430px);gap:clamp(24px,5vw,80px);align-items:center;padding:calc(var(--nav-h) + 4vh) 0 14vh}
.hero-grid>*{min-width:0}
.chips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:1.4em}
.tag{display:inline-flex;align-items:center;gap:.5em;padding:.55em 1.1em;font:700 .74rem/1 var(--f-ui);letter-spacing:.2em;text-transform:uppercase;color:var(--gold-hi);background:rgba(240,182,83,.1);clip-path:var(--slant);box-shadow:inset 0 0 0 1px var(--line)}
.tag.cy{color:var(--mp);background:rgba(66,212,255,.08)}
.hero-title{margin:0;font:900 clamp(44px,7.4vw,108px)/.98 var(--f-deco);letter-spacing:.02em;text-transform:uppercase;filter:drop-shadow(0 6px 0 rgba(0,0,0,.5)) drop-shadow(0 0 34px rgba(255,120,40,.4))}
.hero-title span{display:inline-block;background-image:linear-gradient(100deg,transparent 40%,rgba(255,255,255,.8) 50%,transparent 60%),linear-gradient(180deg,#fff3cf 0%,#ffcf6a 30%,#ff8a2a 62%,#d6381c 100%);background-size:260% 100%,100% 100%;background-repeat:no-repeat;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;animation:sheen 7s ease-in-out infinite}
@keyframes sheen{0%,55%{background-position:160% 0,0 0}100%{background-position:-60% 0,0 0}}
.hero-sub{margin:1em 0 0;max-width:560px;font:italic 400 clamp(1.15rem,1.9vw,1.45rem)/1.5 var(--f-lore);color:#e6dcc8;text-shadow:0 2px 18px #000}
.hero-cta{display:flex;gap:18px;flex-wrap:wrap;margin-top:2em}
.status{--cut:12px;margin-top:2.4em;max-width:min(560px,100%);padding:18px 22px}
.status-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}
.status-top b{font:700 .86rem/1 var(--f-ui);letter-spacing:.22em;text-transform:uppercase;color:var(--gold-hi)}
.live{display:inline-flex;align-items:center;gap:.6em;font:700 .78rem/1 var(--f-ui);letter-spacing:.16em;text-transform:uppercase}
.live i{width:8px;height:8px;border-radius:50%}
.live.on{color:var(--xp)}.live.on i{background:var(--xp);animation:ping 2s infinite}
.live.off{color:var(--hp)}.live.off i{background:var(--hp)}
.status-nums{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:14px}
.status-nums div span{display:block;font:600 .66rem/1 var(--f-ui);letter-spacing:.2em;text-transform:uppercase;color:var(--faint)}
.status-nums div b{display:block;margin-top:.45em;font:700 1.3rem/1 var(--f-ui);color:#fff;letter-spacing:.04em}

/* barras segmentadas */
.bar{position:relative;height:10px;background:rgba(255,255,255,.07);clip-path:polygon(4px 0,100% 0,calc(100% - 4px) 100%,0 100%)}
.bar i{position:absolute;inset:0;width:var(--w,50%);background:linear-gradient(180deg,rgba(255,255,255,.35),transparent 55%),var(--c,var(--xp));box-shadow:0 0 14px var(--c,var(--xp));transition:width .9s cubic-bezier(.2,.8,.2,1)}
.bar::after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent 0 9px,rgba(4,6,12,.75) 9px 11px)}
.bar.hp{--c:var(--hp)}.bar.mp{--c:var(--mp)}.bar.xp{--c:var(--xp)}.bar.gd{--c:var(--gold)}

/* selector de clase */
.classes{--cut:16px;padding:22px 24px 26px}
.cls-tabs{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:18px}
.cls-tab{position:relative;display:grid;place-items:center;aspect-ratio:1;border:0;background:rgba(14,20,36,.9);color:var(--faint);cursor:pointer;clip-path:var(--hex);transition:color .25s,background .25s,transform .25s}
.cls-tab svg{width:46%;height:46%;transition:filter .25s}
.cls-tab:hover{color:var(--text);transform:translateY(-2px)}
.cls-tab.on{color:var(--c);background:linear-gradient(180deg,color-mix(in srgb,var(--c) 28%,#0a0f1b),#0a0f1b)}
.cls-tab.on svg{filter:drop-shadow(0 0 8px var(--c))}
.cls-view{position:relative;text-align:center;padding:6px 0 4px;min-height:430px}
.cls-emblem{position:relative;width:170px;height:170px;margin:0 auto 14px;display:grid;place-items:center;color:var(--c)}
.cls-emblem::before{content:"";position:absolute;inset:-6px;border-radius:50%;border:1px dashed color-mix(in srgb,var(--c) 60%,transparent);animation:spin 40s linear infinite}
.cls-emblem::after{content:"";position:absolute;inset:14px;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--c) 30%,transparent),transparent 68%);filter:blur(4px)}
.cls-emblem svg{position:relative;z-index:1;width:92px;height:92px;filter:drop-shadow(0 0 14px var(--c))}
.cls-name{margin:0;font:900 1.7rem/1.1 var(--f-head);letter-spacing:.1em;text-transform:uppercase;color:#fff}
.cls-role{margin:.35em 0 .9em;font:italic 400 1.15rem/1.3 var(--f-lore);color:var(--c)}
.cls-desc{margin:0 auto 1.1em;max-width:340px;color:var(--muted);font-size:.93rem;min-height:4.8em}
.cls-stats{display:grid;gap:9px;text-align:left}
.cls-stats div{display:grid;grid-template-columns:62px 1fr 34px;align-items:center;gap:12px;font:700 .76rem/1 var(--f-ui);letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}
.cls-stats div em{font-style:normal;color:#fff;text-align:right;letter-spacing:.04em}
.cls-traits{display:flex;flex-wrap:wrap;gap:6px;justify-content:center;margin-top:16px}
.cls-traits span{padding:.5em 1em;font:600 .74rem/1 var(--f-ui);letter-spacing:.14em;text-transform:uppercase;color:var(--c);background:color-mix(in srgb,var(--c) 10%,transparent);clip-path:var(--slant);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--c) 45%,transparent)}
.cls-view.swap>*{animation:swapin .5s cubic-bezier(.2,.8,.2,1) both}
.cls-view.swap>*:nth-child(2){animation-delay:.04s}.cls-view.swap>*:nth-child(3){animation-delay:.08s}.cls-view.swap>*:nth-child(4){animation-delay:.12s}.cls-view.swap>*:nth-child(5){animation-delay:.16s}.cls-view.swap>*:nth-child(6){animation-delay:.2s}
@keyframes swapin{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
.scroll-cue{position:absolute;left:50%;bottom:24px;width:26px;height:42px;margin-left:-13px;border:1.5px solid var(--line-hi);border-radius:14px;opacity:.8}
.scroll-cue i{position:absolute;left:50%;top:8px;width:3px;height:8px;margin-left:-1.5px;border-radius:3px;background:var(--gold-hi);animation:cue 1.8s infinite}
@keyframes cue{0%{opacity:0;transform:translateY(0)}30%{opacity:1}100%{opacity:0;transform:translateY(16px)}}

/* ---------- Cinta de novedades ---------- */
.ticker{position:relative;display:flex;align-items:stretch;background:#070a13;border-block:1px solid var(--line);overflow:hidden}
.ticker-label{flex:none;display:flex;align-items:center;gap:10px;padding:0 26px 0 20px;font:700 .8rem/1 var(--f-ui);letter-spacing:.24em;text-transform:uppercase;color:#1a1204;background:linear-gradient(180deg,#fff0bd,#e8a93f);clip-path:polygon(0 0,100% 0,calc(100% - 16px) 100%,0 100%);z-index:2}
.ticker-track{display:flex;gap:46px;padding:15px 0 15px 46px;white-space:nowrap;animation:marq 48s linear infinite;font:600 .98rem/1 var(--f-ui);letter-spacing:.06em;color:var(--text)}
.ticker-track span::before{content:"◆";margin-right:46px;color:var(--gold)}
@keyframes marq{to{transform:translateX(-50%)}}
.ticker:hover .ticker-track{animation-play-state:paused}

/* ---------- Secciones ---------- */
.sec{position:relative;padding:clamp(64px,9vw,120px) 0;background:var(--bg0)}
.sec::before{content:"";position:absolute;inset:0;background:radial-gradient(60% 40% at 50% 0,rgba(66,212,255,.05),transparent 70%),repeating-linear-gradient(90deg,rgba(255,255,255,.012) 0 1px,transparent 1px 90px);pointer-events:none}
.sec-head{max-width:880px;margin:0 0 clamp(30px,4vw,54px)}
.sec-head.center{margin-inline:auto;text-align:center}
.eyebrow{display:inline-flex;align-items:center;gap:12px;margin:0 0 .9em;font:700 .82rem/1 var(--f-ui);letter-spacing:.34em;text-transform:uppercase;color:var(--gold)}
.eyebrow::before{content:"";width:34px;height:2px;background:linear-gradient(90deg,transparent,var(--gold))}
.sec-head.center .eyebrow::after{content:"";width:34px;height:2px;background:linear-gradient(90deg,var(--gold),transparent)}
.sec-head h2,.cta-final h2{margin:0;font:900 clamp(1.7rem,3.3vw,2.6rem)/1.15 var(--f-head);letter-spacing:.03em;text-transform:uppercase;color:#fff}
.sec-head h2 em{font-style:normal;color:var(--gold-hi)}
.lead{margin:1em 0 0;font:400 1.08rem/1.7 var(--f-body);color:var(--muted)}

.band{background:linear-gradient(180deg,#050810,#0a1020);border-bottom:1px solid var(--line)}
.stats{display:grid;grid-template-columns:repeat(4,1fr)}
.stat{display:flex;align-items:center;gap:16px;padding:28px 18px;position:relative}
.stat+.stat::before{content:"";position:absolute;left:0;top:24%;bottom:24%;width:1px;background:linear-gradient(transparent,var(--line-hi),transparent)}
.stat .ic{flex:none;display:grid;place-items:center;width:54px;height:54px;color:var(--c,var(--gold));background:color-mix(in srgb,var(--c,var(--gold)) 14%,transparent);clip-path:var(--hex)}
.stat .ic svg{width:26px;height:26px}
.stat b{display:block;font:700 clamp(1.8rem,3vw,2.4rem)/1 var(--f-ui);color:#fff;letter-spacing:.02em}
.stat span{display:block;margin-top:.35em;font:600 .72rem/1.2 var(--f-ui);letter-spacing:.22em;text-transform:uppercase;color:var(--muted)}

.grid{display:grid;gap:20px}
.feat{grid-template-columns:repeat(3,1fr)}
.slot{--cut:14px;padding:30px 28px 28px;transition:transform .3s,filter .3s}
.slot:hover{transform:translateY(-6px);filter:drop-shadow(0 18px 28px rgba(0,0,0,.6)) drop-shadow(0 0 18px color-mix(in srgb,var(--c) 40%,transparent))}
.slot .rar{position:absolute;right:26px;top:24px;font:700 .64rem/1 var(--f-ui);letter-spacing:.2em;text-transform:uppercase;color:var(--c)}
.slot .ico{display:grid;place-items:center;width:62px;height:62px;margin-bottom:20px;color:var(--c);background:linear-gradient(160deg,color-mix(in srgb,var(--c) 28%,transparent),color-mix(in srgb,var(--c) 5%,transparent));clip-path:var(--hex)}
.slot .ico svg{width:28px;height:28px;filter:drop-shadow(0 0 6px var(--c))}
.slot h3{margin:0 0 .45em;font:700 1.3rem/1.2 var(--f-ui);letter-spacing:.08em;text-transform:uppercase;color:#fff}
.slot p{margin:0;color:var(--muted);font-size:.96rem}
.slot.legendary{--c:#ffb347}.slot.epic{--c:#b98bff}.slot.rare{--c:#46d6ff}.slot.uncommon{--c:#43e6a2}

/* misión */
.sec-quest{background:linear-gradient(180deg,var(--bg0),#080c18 50%,var(--bg0))}
.quest{--cut:20px;display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}
.quest-side{padding:40px 38px;border-right:1px solid var(--line);background:radial-gradient(90% 70% at 0 0,rgba(255,106,43,.14),transparent 70%)}
.quest-side .tag{margin-bottom:1.2em}
.quest-side h3{margin:0 0 .5em;font:900 clamp(1.5rem,2.6vw,2.1rem)/1.15 var(--f-head);letter-spacing:.04em;text-transform:uppercase;color:#fff}
.quest-side p{margin:0 0 1.6em;color:var(--muted)}
.quest-prog{display:flex;align-items:center;gap:14px;font:700 .8rem/1 var(--f-ui);letter-spacing:.2em;text-transform:uppercase;color:var(--gold-hi)}
.quest-prog .bar{flex:1}
.rewards{display:flex;gap:10px;margin-top:22px;flex-wrap:wrap}
.reward{display:flex;align-items:center;gap:10px;padding:.75em 1.1em;background:rgba(240,182,83,.08);font:700 .82rem/1 var(--f-ui);letter-spacing:.1em;text-transform:uppercase;color:var(--gold-hi);clip-path:var(--slant);box-shadow:inset 0 0 0 1px var(--line)}
.objs{list-style:none;margin:0;padding:18px 26px}
.obj{display:grid;grid-template-columns:44px 1fr auto;align-items:center;gap:18px;padding:20px 8px;border-bottom:1px solid rgba(240,182,83,.12)}
.obj:last-child{border:0}
.obj .chk{display:grid;place-items:center;width:40px;height:40px;color:var(--gold-hi);font:700 1.05rem/1 var(--f-ui);clip-path:var(--hex);background:rgba(240,182,83,.14);box-shadow:inset 0 0 0 1px var(--gold)}
.obj h4{margin:0;font:700 1.15rem/1.2 var(--f-ui);letter-spacing:.08em;text-transform:uppercase;color:#fff}
.obj p{margin:.25em 0 0;color:var(--muted);font-size:.92rem}
.obj .go{font:700 .8rem/1 var(--f-ui);letter-spacing:.2em;text-transform:uppercase;white-space:nowrap}

/* fama + noticias */
.two{display:grid;grid-template-columns:1fr 1.1fr;gap:clamp(24px,4vw,56px)}
.board{--cut:16px;padding:14px 18px 8px}
.board-row{display:grid;grid-template-columns:52px 1fr auto;align-items:center;gap:16px;padding:14px 8px;color:var(--text) !important;border-bottom:1px solid rgba(240,182,83,.1);transition:background .2s}
.board-row:hover{background:linear-gradient(90deg,rgba(240,182,83,.12),transparent)}
.rk{display:grid;place-items:center;width:44px;height:44px;font:700 1.1rem/1 var(--f-ui);color:#10100a;background:var(--faint);clip-path:var(--hex)}
.rk.r1{background:linear-gradient(160deg,#fff0bd,#f0b653 60%,#a8701f)}
.rk.r2{background:linear-gradient(160deg,#f6f9ff,#aeb8cd 60%,#6f7a90)}
.rk.r3{background:linear-gradient(160deg,#ffd6b0,#c8793c 60%,#7a4018)}
.who b{display:block;font:700 1.12rem/1.2 var(--f-ui);letter-spacing:.06em;color:#fff;text-transform:uppercase}
.who small{color:var(--muted);font:600 .8rem/1 var(--f-ui);letter-spacing:.14em;text-transform:uppercase}
.lvl{display:flex;flex-direction:column;align-items:flex-end;font:600 .62rem/1 var(--f-ui);letter-spacing:.2em;text-transform:uppercase;color:var(--faint)}
.lvl b{margin-top:.2em;font:700 1.6rem/1 var(--f-ui);color:var(--gold-hi);letter-spacing:.02em}
.more{display:block;text-align:center;padding:16px;font:700 .82rem/1 var(--f-ui);letter-spacing:.22em;text-transform:uppercase}
.empty{padding:34px 20px;text-align:center;color:var(--muted);font:italic 400 1.1rem/1.5 var(--f-lore)}
.news{display:grid;gap:16px}
.news-item{--cut:14px;padding:24px 28px}
.news-item time{font:700 .74rem/1 var(--f-ui);letter-spacing:.24em;color:var(--gold)}
.news-item h3{margin:.55em 0 .5em;font:700 1.35rem/1.25 var(--f-ui);letter-spacing:.06em;text-transform:uppercase;color:#fff}
.news-item .body{color:var(--muted);font-size:.96rem}.news-item .body p{margin:.4em 0}

.cta-final{position:relative;padding:clamp(80px,11vw,150px) 0;text-align:center;overflow:hidden;background:radial-gradient(70% 90% at 50% 120%,rgba(255,106,43,.32),transparent 70%),radial-gradient(60% 60% at 50% 0,rgba(66,212,255,.1),transparent 70%),#05070d;border-top:1px solid var(--line)}
.runes-cta{position:absolute;left:50%;top:50%;width:min(820px,130vw);aspect-ratio:1;transform:translate(-50%,-50%);opacity:.1;pointer-events:none}
.runes-cta img{width:100%;animation:spin 180s linear infinite reverse}
.cta-final h2{position:relative;font-size:clamp(2.1rem,5.2vw,4.2rem)}
.cta-final h2 em{display:block;margin-top:.2em;font:italic 600 .5em/1.3 var(--f-lore);color:#eadcc0;text-transform:none;letter-spacing:0}
.reqs{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-top:2em}

/* ---------- Pie ---------- */
.foot{background:#03050a;border-top:1px solid var(--line);padding:60px 0 26px;color:var(--muted);font-size:.93rem}
.foot-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:40px}
.foot-brand p{max-width:340px;margin:1em 0 0}
.foot h4{margin:0 0 1.1em;font:700 .8rem/1 var(--f-ui);letter-spacing:.28em;text-transform:uppercase;color:var(--gold)}
.foot-grid a:not(.brand){display:block;padding:.3em 0;color:var(--muted)}
.foot-grid a:not(.brand):hover{color:var(--gold-hi)}
.legal{margin-top:44px;padding-top:22px;border-top:1px solid rgba(240,182,83,.12);font-size:.8rem;color:var(--faint)}
.legal-bar{display:flex;justify-content:space-between;align-items:center;gap:12px 24px;flex-wrap:wrap}
.legal p{margin:.3em 0}
.legal .copy,.legal .made{font:600 .86rem/1.4 var(--f-ui);letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.legal .copy b{color:var(--gold-hi)}.legal .made span{color:var(--gold)}
.legal a{color:var(--gold-hi)}.legal a:hover{color:#fff}
.legal .disc{margin-top:1em;max-width:900px;font-size:.78rem;color:var(--faint)}

/* ---------- Revelado al hacer scroll ---------- */
.js .reveal{opacity:0;transform:translate3d(0,24px,0);transition:opacity .8s cubic-bezier(.2,.7,.2,1),transform .8s cubic-bezier(.2,.7,.2,1)}
.js .reveal.in{opacity:1;transform:none}
.js .grid>.reveal:nth-child(2),.js .stats>.reveal:nth-child(2){transition-delay:.08s}
.js .grid>.reveal:nth-child(3),.js .stats>.reveal:nth-child(3){transition-delay:.16s}
.js .grid>.reveal:nth-child(4),.js .stats>.reveal:nth-child(4){transition-delay:.24s}
.js .grid>.reveal:nth-child(5){transition-delay:.12s}.js .grid>.reveal:nth-child(6){transition-delay:.2s}
.js .quest .bar i{width:0}.js .quest.in .bar i{width:var(--w)}

/* =========================================================
   PÁGINAS INTERIORES Y PANEL
   ========================================================= */
.hero.mini{min-height:300px;align-items:flex-end}
.hero.mini .hero-content{width:min(1240px,100% - 48px);margin-inline:auto;padding:calc(var(--nav-h) + 30px) 0 56px}
.hero.mini .layer.runes,.hero.mini .layer.dragons .d2,.hero.mini .layer.dragons .d3,.hero.mini .layer.m2{display:none}
.hero.mini .layer.vignette{background:linear-gradient(90deg,rgba(3,5,10,.7),transparent 70%),linear-gradient(180deg,rgba(3,5,10,.55),transparent 30%,rgba(4,6,12,.85) 100%)}
.crumbs{margin:0 0 .7em;display:flex;align-items:center;gap:10px;font:700 .8rem/1 var(--f-ui);letter-spacing:.24em;text-transform:uppercase;color:var(--muted)}
.crumbs::before{content:"";width:9px;height:9px;background:var(--gold);transform:rotate(45deg);box-shadow:0 0 12px var(--gold)}
.crumbs i{font-style:normal;color:var(--gold)}.crumbs span{color:var(--gold-hi)}
.page-title{margin:0;font:900 clamp(2rem,4.6vw,3.5rem)/1.08 var(--f-head);letter-spacing:.04em;text-transform:uppercase;color:#fff;text-shadow:0 4px 30px rgba(0,0,0,.7)}
.page-title::after{content:"";display:block;width:120px;height:3px;margin-top:.5em;background:linear-gradient(90deg,var(--gold),transparent);box-shadow:0 0 14px var(--gold)}
.shell{position:relative;z-index:5;width:min(1240px,100% - 32px);margin:-30px auto 90px}
.panel-card{--cut:22px;padding:clamp(22px,3.4vw,42px)}

/* --- contenido de MyAAC dentro del panel --- */
.Content,.Content *{font-family:var(--f-body)}
.Content{color:var(--text);font-size:.98rem;line-height:1.65}
.Content h1,.Content h2,.Content h3,.Content h4{font-family:var(--f-ui) !important;color:var(--gold-hi);letter-spacing:.1em;text-transform:uppercase;margin:1.2em 0 .6em;line-height:1.2}
.Content h1{font-size:1.9rem}.Content h2{font-size:1.5rem}.Content h3{font-size:1.2rem}
.Content a{color:var(--gold-hi)}.Content a:hover{color:#fff;text-decoration:underline}
.Content p{margin:.7em 0}
.Content hr{border:0;height:1px;background:linear-gradient(90deg,transparent,var(--line-hi),transparent);margin:1.6em 0}
.Content small,.Content .size_xs{color:var(--muted)}
.Content b,.Content strong{color:#fff}
.Content img{max-width:100%;height:auto}
.Content ul,.Content ol{padding-left:1.3em}.Content li{margin:.25em 0}
.Content font{color:inherit !important}
.Content .warning{color:#ffc79a;background:rgba(255,122,26,.08);border-left:3px solid var(--ember);padding:.8em 1em;display:block}
.Content .FormFieldError{color:#ff8a98 !important;font-weight:600}
.browsehappy{display:none !important}

.Content table{border-collapse:separate;border-spacing:0 3px;max-width:100%}
.Content table[width="100%"],.Content table.myaac-table{width:100%}
.Content td,.Content th{color:var(--text);vertical-align:top}
.Content tr[bgcolor]>td,.Content tr[style*="background"]>td,.Content .InnerTableContainer td,.Content th{vertical-align:middle}
.Content [bgcolor]{background:rgba(255,255,255,.035) !important;color:var(--text)}
.Content [bgcolor="#e5e3d7" i],.Content [bgcolor="#f1e0c6" i],.Content [bgcolor="#241a3d" i]{background:rgba(255,255,255,.06) !important}
.Content [bgcolor="#afab89" i],.Content [bgcolor="#505050" i],.Content [bgcolor="#3a2a14" i]{background:linear-gradient(180deg,rgba(240,182,83,.28),rgba(240,182,83,.08)) !important;color:var(--gold-hi) !important}
.Content td.white,.Content .white{color:var(--gold-hi) !important;font-family:var(--f-ui);letter-spacing:.14em;text-transform:uppercase;font-weight:700}
.Content td[bgcolor],.Content tr[bgcolor] td{padding:.7em .9em}
.Content tr[bgcolor]:hover>td{background:rgba(240,182,83,.1)}
.Content .sortarrow{filter:hue-rotate(20deg) brightness(1.3)}
.Content tr[style*="background"],.Content div[style*="background-color"]{background-color:transparent !important}
.Content .myaac-table>tbody>tr:nth-child(odd)>td{background:rgba(255,255,255,.03)}
.Content .myaac-table>tbody>tr:nth-child(even)>td{background:rgba(255,255,255,.06)}
.Content .myaac-table>thead>tr>th,.Content .myaac-table>thead>tr>td{background:linear-gradient(180deg,rgba(240,182,83,.28),rgba(240,182,83,.08)) !important;color:var(--gold-hi) !important}

.Content .TableContainer{position:relative;margin:1.2em 0;background:rgba(6,9,18,.55);border:1px solid var(--line);border-left:3px solid var(--gold)}
.Content .TableContainer table.Table1{width:100%;border-spacing:0}
.Content .CaptionInnerContainer{position:relative;padding:.9em 1.3em;background:linear-gradient(90deg,rgba(240,182,83,.24),rgba(240,182,83,.04));border-bottom:1px solid var(--line)}
.Content .CaptionInnerContainer span{display:none !important}
.Content .CaptionInnerContainer .Text{font:700 .95rem/1.2 var(--f-ui);letter-spacing:.2em;text-transform:uppercase;color:var(--gold-hi)}
.Content .InnerTableContainer{padding:1.1em 1.3em}.Content .InnerTableContainer table{width:100%}
.Content .TableShadowContainer,.Content .TableShadowContainerRightTop,.Content .TableContentContainer,.Content .TableContentAndRightShadow,.Content .TableContent{background:none !important;border:0 !important;padding:0 !important;margin:0 !important;box-shadow:none !important}
.Content .TableBottomShadow,.Content .TableBottomLeftShadow,.Content .TableBottomRightShadow,.Content .TableShadowRightTop{display:none}
.Content .LabelV,.Content .LabelV150,.Content .LabelH{color:var(--muted) !important;font-weight:600;padding:.55em 1em .55em 0;white-space:nowrap;vertical-align:top}
.Content .LabelV span,.Content .LabelV150 span{color:var(--muted)}
.Content .OptionContainer{display:inline-flex;align-items:center;gap:.5em;margin:.2em 1em .2em 0}

.Content input[type=text],.Content input[type=password],.Content input[type=email],.Content input[type=number],.Content input[type=search],.Content input[type=url],.Content input:not([type]),.Content textarea,.Content select{background:rgba(5,8,16,.9);color:var(--text);border:1px solid rgba(240,182,83,.28);border-bottom:2px solid rgba(240,182,83,.5);border-radius:0;padding:.7em .95em;font:500 .95rem var(--f-body);outline:0;transition:border-color .2s,box-shadow .2s,background .2s;max-width:100%}
.Content select{padding-right:2em}
.Content input:focus,.Content textarea:focus,.Content select:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(240,182,83,.18),0 6px 20px -8px rgba(240,182,83,.6);background:rgba(10,15,28,.98)}
.Content input::placeholder{color:var(--faint)}
.Content input[type=checkbox],.Content input[type=radio]{accent-color:var(--gold);width:1.05em;height:1.05em;vertical-align:-2px}
.Content input[type=submit],.Content input[type=button],.Content button:not(.burger):not(.cls-tab),.Content .btn-form,.Content a.btn-form{position:relative;display:inline-block;font:700 .9rem/1 var(--f-ui);letter-spacing:.18em;text-transform:uppercase;color:#1a1204 !important;padding:1.05em 2em;border:0;cursor:pointer;background:linear-gradient(180deg,#fff0bd,#f4bf5c 45%,#c98424);clip-path:var(--slant);transition:filter .2s,transform .2s;text-decoration:none !important}
.Content input[type=submit]:hover,.Content input[type=button]:hover,.Content button:not(.burger):not(.cls-tab):hover,.Content a.btn-form:hover{filter:brightness(1.12);transform:translateY(-2px);color:#1a1204 !important}
.Content a>input[type=button]{pointer-events:none}
.Content table td[style*="border:0"]{background:none !important}

/* páginas de texto */
.Content .doc{max-width:860px}
.Content .lead-p{font:italic 400 1.28rem/1.6 var(--f-lore);color:#e6dcc8;margin:0 0 1.6em}
.Content .doc h2{margin:1.8em 0 .6em;font-size:1.25rem;padding-bottom:.45em;border-bottom:1px solid var(--line)}
.Content .doc ul{list-style:none;padding:0}
.Content .doc ul li{position:relative;padding-left:1.7em;margin:.6em 0}
.Content .doc ul li::before{content:"";position:absolute;left:.3em;top:.62em;width:7px;height:7px;transform:rotate(45deg);background:var(--gold);box-shadow:0 0 10px rgba(240,182,83,.8)}
.Content .doc code,.Content pre{font:500 .88em "Cascadia Mono",Consolas,Menlo,monospace;color:var(--gold-hi);background:rgba(240,182,83,.09);border:1px solid rgba(240,182,83,.25);padding:.12em .45em}
.Content pre{display:block;padding:1em 1.2em;overflow-x:auto;line-height:1.7;margin:.8em 0}
.Content .small{font-size:.86rem;color:var(--muted)}
.Content .howto{list-style:none;counter-reset:h;padding:0;margin:0 0 2em;display:grid;gap:16px}
.Content .howto>li{counter-increment:h;position:relative;padding:22px 26px 22px 88px;background:linear-gradient(90deg,rgba(240,182,83,.08),rgba(6,9,18,.5));border:1px solid var(--line);border-left:3px solid var(--gold);margin:0}
.Content .howto>li::before{content:counter(h);position:absolute;left:22px;top:22px;display:grid;place-items:center;width:46px;height:46px;font:700 1.3rem/1 var(--f-ui);color:var(--gold-hi);background:rgba(240,182,83,.14);clip-path:var(--hex)}
.Content .howto h3{margin:0 0 .4em}.Content .howto p{margin:.5em 0}

/* captcha del registro */
.Content .epic-captcha{margin:1.4em 0;padding:18px 20px;background:rgba(240,182,83,.06);border:1px solid var(--line);border-left:3px solid var(--gold);max-width:480px}
.Content .epic-captcha>label{display:block;margin-bottom:.7em;font:700 .8rem/1 var(--f-ui);letter-spacing:.22em;text-transform:uppercase;color:var(--gold-hi)}
.Content .ec-row{display:flex;align-items:center;gap:12px;margin-bottom:.8em;flex-wrap:wrap}
.Content .ec-row img{border:1px solid var(--line-hi);background:#0e091c;max-width:100%;height:auto}
.Content .ec-row button.ec-new:not(.burger):not(.cls-tab){padding:.8em 1.1em;font-size:.74rem;background:transparent;color:var(--gold-hi) !important;box-shadow:inset 0 0 0 1px var(--line-hi);clip-path:none}
.Content .epic-captcha input[type=text]{width:100%;letter-spacing:.2em;text-transform:uppercase}
.Content .epic-captcha input::placeholder{letter-spacing:.02em;text-transform:none}
.Content .ec-trap{position:absolute !important;left:-6000px;top:auto;width:1px;height:1px;overflow:hidden}

/* =========================================================
   PANEL DE CUENTA · HOJA DE PERSONAJE
   ========================================================= */
.Content .dash{display:grid;grid-template-columns:270px 1fr;gap:clamp(20px,3vw,38px);align-items:start}
.dash-side{position:sticky;top:calc(var(--nav-h) + 16px);display:grid;gap:16px}
.who-card{--cut:14px;display:grid;justify-items:center;gap:10px;padding:26px 18px;text-align:center}
.who-card b{font:700 1.2rem/1.2 var(--f-ui);letter-spacing:.12em;text-transform:uppercase;color:#fff;word-break:break-all}
.avatar{display:grid;place-items:center;width:84px;height:84px;font:900 2rem/1 var(--f-head);color:#1a1204;background:linear-gradient(160deg,#fff0bd,#f0b653 60%,#a8701f);clip-path:var(--hex)}
.badge{display:inline-block;padding:.55em 1.2em;font:700 .72rem/1 var(--f-ui);letter-spacing:.2em;text-transform:uppercase;color:var(--muted);clip-path:var(--slant);box-shadow:inset 0 0 0 1px var(--line)}
.badge.gold{color:#1a1204;background:linear-gradient(180deg,#ffe9ae,#e0aa4a)}
.side-nav{--cut:12px;display:grid;gap:2px;padding:10px}
.side-nav a{display:flex;align-items:center;gap:12px;padding:.9em 1em;font:700 .95rem/1 var(--f-ui);letter-spacing:.12em;text-transform:uppercase;color:var(--text) !important;text-decoration:none !important;transition:background .2s,color .2s,padding .2s;border-left:2px solid transparent}
.side-nav a svg{width:18px;height:18px;flex:none;color:var(--gold)}
.side-nav a:hover{background:linear-gradient(90deg,rgba(240,182,83,.14),transparent);color:var(--gold-hi) !important;padding-left:1.25em}
.side-nav a.on{background:linear-gradient(90deg,rgba(240,182,83,.24),rgba(240,182,83,.02));color:var(--gold-hi) !important;border-left-color:var(--gold)}
.side-nav a.out{margin-top:6px;border-top:1px solid rgba(240,182,83,.14);color:var(--muted) !important}
.dash-main{min-width:0}
.Content .dash-hello{margin:0;font:900 clamp(1.5rem,3vw,2.1rem)/1.2 var(--f-head) !important;color:#fff;letter-spacing:.04em;text-transform:uppercase}
.dash-hello em{font-style:normal;color:var(--gold-hi)}
.dash-sub{margin:.4em 0 1.6em;color:var(--muted)}
.dnote{margin:0 0 1.4em;padding:1em 1.2em;background:rgba(143,123,255,.1);border:1px solid rgba(143,123,255,.35);border-left:3px solid var(--arc);font-size:.93rem;color:var(--text)}
.dnote.warn{background:rgba(255,106,43,.08);border-color:rgba(255,106,43,.35);border-left-color:var(--ember)}
.dnote form{margin-top:.8em}.dnote b,.dnote a{color:#fff}

.sheet{--cut:20px;display:grid;grid-template-columns:200px 1fr;gap:26px;padding:26px 28px;margin-bottom:22px}
.sheet-ava{position:relative;display:grid;place-items:center;align-content:center;gap:10px;min-height:230px;background:radial-gradient(circle at 50% 40%,rgba(240,182,83,.2),transparent 70%)}
.sheet-ava::before{content:"";position:absolute;inset:8px;border:1px dashed var(--line);clip-path:var(--hex);opacity:.7}
.sheet-ava img{position:relative;max-height:150px;filter:drop-shadow(0 8px 14px rgba(0,0,0,.7))}
.sheet-lv{position:relative;display:grid;place-items:center;width:62px;height:62px;margin-top:-6px;font:700 1.5rem/1 var(--f-ui);color:#1a1204;background:linear-gradient(160deg,#fff0bd,#f0b653 60%,#a8701f);clip-path:var(--hex)}
.sheet-name{margin:0;font:900 1.7rem/1.1 var(--f-head) !important;letter-spacing:.06em;text-transform:uppercase;color:#fff}
.sheet-sub{margin:.35em 0 1.2em;font:600 .88rem/1 var(--f-ui);letter-spacing:.2em;text-transform:uppercase;color:var(--gold)}
.vital{display:grid;grid-template-columns:44px 1fr auto;align-items:center;gap:14px;margin:.7em 0;font:700 .78rem/1 var(--f-ui);letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}
.vital em{font-style:normal;color:#fff;letter-spacing:.06em;min-width:92px;text-align:right}
.sheet-acts{display:flex;gap:10px;flex-wrap:wrap;margin-top:1.4em}
.tiles{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:1.6em}
.tile{padding:16px 18px;background:rgba(255,255,255,.035);border:1px solid var(--line);border-left:3px solid var(--gold)}
.tile span{display:block;font:700 .68rem/1 var(--f-ui);letter-spacing:.22em;text-transform:uppercase;color:var(--muted)}
.tile b{display:block;margin-top:.5em;font:700 1.7rem/1 var(--f-ui);color:var(--gold-hi);letter-spacing:.03em}
.tile b.sm{font-size:1.02rem;line-height:1.3;color:#fff}
.dsec{--cut:14px;margin:0 0 1.5em;padding:22px 26px}
.dsec>header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:1.1em}
.Content .dsec h3{margin:0;font:700 .9rem/1.2 var(--f-ui) !important;letter-spacing:.26em;text-transform:uppercase;color:var(--gold-hi);display:flex;align-items:center;gap:12px}
.Content .dsec h3::before{content:"";width:8px;height:8px;background:var(--gold);transform:rotate(45deg);box-shadow:0 0 10px var(--gold)}
.dgrid{display:grid;grid-template-columns:1fr 1fr;gap:0 22px}
.muted-p{color:var(--muted);margin:.3em 0}
.chars{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px}
.char{display:grid;gap:14px;padding:18px;background:rgba(255,255,255,.03);border:1px solid rgba(240,182,83,.18);transition:border-color .25s,transform .25s,background .25s}
.char:hover{border-color:var(--line-hi);background:rgba(240,182,83,.06);transform:translateY(-3px)}
.char.dead{opacity:.5}
.char-top{display:flex;align-items:center;gap:12px}
.char-ava{display:grid;place-items:center;width:46px;height:46px;flex:none;font:700 1.2rem/1 var(--f-ui);color:var(--gold-hi);background:rgba(240,182,83,.16);clip-path:var(--hex)}
.char-id{min-width:0;flex:1}
.char-id a{display:block;font:700 1.08rem/1.2 var(--f-ui);letter-spacing:.08em;text-transform:uppercase;color:#fff;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.char-id small{color:var(--muted);font:600 .76rem/1 var(--f-ui);letter-spacing:.1em;text-transform:uppercase}
.st{padding:.4em .8em;font:700 .64rem/1 var(--f-ui);letter-spacing:.14em;text-transform:uppercase;color:var(--faint);border:1px solid rgba(255,255,255,.12)}
.st.on{color:var(--xp);border-color:rgba(67,230,162,.5);background:rgba(67,230,162,.1)}
.char dl{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:0}
.char dl div{padding:.6em .7em;background:rgba(0,0,0,.3)}
.char dt{font:700 .58rem/1 var(--f-ui);letter-spacing:.16em;text-transform:uppercase;color:var(--faint)}
.char dd{margin:.45em 0 0;font:700 .98rem/1.1 var(--f-ui);letter-spacing:.04em;color:#fff}
.char-edit{font:700 .78rem/1 var(--f-ui);letter-spacing:.18em;text-transform:uppercase}
.kv{margin:0 0 1em}.kv>div{display:flex;gap:16px;justify-content:space-between;padding:.75em 0;border-bottom:1px solid rgba(240,182,83,.1)}
.kv dt{color:var(--muted);font-weight:600}.kv dd{margin:0;text-align:right;word-break:break-word}
.good{color:var(--xp);font-weight:600}.bad{color:#ff9aa6;font-weight:600}
.row-btns{display:flex;flex-wrap:wrap;gap:12px}.row-btns form{margin:0}
.log{list-style:none;margin:0;padding:0}
.log li{display:grid;grid-template-columns:14px 1fr auto auto;align-items:center;gap:14px;padding:.7em 0;border-bottom:1px solid rgba(240,182,83,.08);font-size:.9rem}
.log li:last-child{border:0}.dotl{width:7px;height:7px;background:var(--gold);transform:rotate(45deg)}
.log time{color:var(--muted)}.log code{color:var(--faint);font-size:.8rem}

/* ---------- Responsive ---------- */
@media (max-width:1100px){
  .hero-grid{grid-template-columns:1fr;padding-bottom:12vh}.classes{max-width:520px}
  .feat{grid-template-columns:repeat(2,1fr)}.two{grid-template-columns:1fr}.foot-grid{grid-template-columns:1fr 1fr}
  .quest{grid-template-columns:1fr}.quest-side{border-right:0;border-bottom:1px solid var(--line)}
  .Content .dash{grid-template-columns:1fr}.dash-side{position:static}.tiles{grid-template-columns:repeat(2,1fr)}.dgrid{grid-template-columns:1fr}
}
@media (max-width:980px){
  .burger{display:block}
  .menu{position:fixed;inset:var(--nav-h) 0 auto 0;margin:0;flex-direction:column;align-items:stretch;gap:0;padding:8px 18px 22px;background:rgba(5,8,15,.98);backdrop-filter:blur(16px);border-bottom:1px solid var(--line);max-height:calc(100vh - var(--nav-h));overflow:auto;transform:translateY(-14px);opacity:0;visibility:hidden;transition:.25s}
  .menu.open{transform:none;opacity:1;visibility:visible}
  .top-link{text-align:left;padding:1.1em .6em;border-bottom:1px solid rgba(240,182,83,.1);width:100%}
  .top-link::before{display:none}
  .has-sub .sub{position:static;opacity:1;visibility:visible;transform:none;padding:0 0 8px 12px;clip-path:none;background:none}
  .has-sub .sub::before,.has-sub .sub::after{display:none}
  .has-sub .chev{display:none}
  .nav-right .chip-online,.nav-right .btn-ghost{display:none}.nav-right{margin-left:auto}.burger{margin-left:10px}
  .stats{grid-template-columns:repeat(2,1fr)}.stat+.stat::before{display:none}
  .sheet{grid-template-columns:1fr}
}
@media (max-width:640px){
  .feat{grid-template-columns:1fr}.foot-grid{grid-template-columns:1fr}.nav-right .btn-gold{display:none}
  .hero-title{font-size:clamp(34px,10.6vw,88px)}.layer.moon{right:6%;top:13%}.dragon.d1{width:100px}.dragon.d2{width:60px}.dragon.d3{display:none}
  .cls-view{min-height:0}.obj{grid-template-columns:38px 1fr}.obj .go{grid-column:2}
  .Content table{display:block;overflow-x:auto}
  .Content .howto>li{padding:76px 18px 20px}.Content .howto>li::before{left:18px;top:18px}
  .log li{grid-template-columns:14px 1fr}.log time,.log code{grid-column:2}
}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none !important;transition:none !important;scroll-behavior:auto !important}
  .js .reveal{opacity:1;transform:none}
}

/* Ajustes de la auditoría: sin desbordes horizontales y texto largo que se parte */
html{overflow-x:hidden}
.Content .howto>li{min-width:0}
.Content .howto,.Content .doc{min-width:0}
.Content pre{white-space:pre-wrap;word-break:break-all}
.Content .howto p,.Content .howto h3,.Content .howto li{overflow-wrap:anywhere}
.Content .dataTables_wrapper{overflow-x:auto}
.Content .dataTables_filter input,.Content .dataTables_length select{max-width:100%}

/* Ficha de personaje: marco hexagonal para el aspecto */
.Content .char-outfit{float:right;display:grid;place-items:center;width:170px;height:170px;margin:0 0 14px 22px;clip-path:var(--hex);background:radial-gradient(circle at 50% 40%,rgba(240,182,83,.28),rgba(8,12,22,.9) 70%);box-shadow:inset 0 0 0 1px var(--gold)}
.Content .char-outfit img{width:110px;height:110px;image-rendering:pixelated;filter:drop-shadow(0 6px 10px rgba(0,0,0,.7))}
@media (max-width:640px){.Content .char-outfit{float:none;margin:0 auto 14px}}

/* Tablas dinámicas de MyAAC (hechizos, etc.) */
.Content table.dataTable{width:100% !important;border-collapse:separate;border-spacing:0 3px}
.Content table.dataTable tbody tr,.Content table.dataTable tbody td{background:rgba(255,255,255,.035) !important;color:var(--text) !important}
.Content table.dataTable tbody tr:nth-child(even) td{background:rgba(255,255,255,.06) !important}
.Content table.dataTable thead th{background:linear-gradient(180deg,rgba(240,182,83,.28),rgba(240,182,83,.08)) !important;color:var(--gold-hi) !important;font-family:var(--f-ui);letter-spacing:.14em;text-transform:uppercase}
.Content table.dataTable td.dataTables_empty{background:rgba(255,255,255,.035) !important;color:var(--muted) !important;text-align:center;padding:1.2em}
.Content .dataTables_wrapper .dataTables_length,.Content .dataTables_wrapper .dataTables_filter,.Content .dataTables_wrapper .dataTables_info,.Content .dataTables_wrapper .dataTables_paginate{color:var(--muted) !important;margin:.6em 0}
.Content .dataTables_wrapper .paginate_button{color:var(--gold-hi) !important;padding:.4em .8em;cursor:pointer}
.Content .dataTables_wrapper .paginate_button.current{background:rgba(240,182,83,.2);color:#fff !important}

/* Información del servidor (portada) */
.sec-info{background:linear-gradient(180deg,var(--bg0),#080c18 50%,var(--bg0))}
.info-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:22px;align-items:stretch}
.rates{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.rate{--cut:14px;display:grid;gap:6px;align-content:center;padding:22px 24px;text-align:left}
.rate span{font:700 .78rem/1 var(--f-ui);letter-spacing:.26em;text-transform:uppercase;color:var(--muted)}
.rate b{font:700 2.4rem/1 var(--f-ui);color:var(--gold-hi);letter-spacing:.02em}
.rate.big{grid-column:1/-1;padding:30px 28px;background:radial-gradient(80% 120% at 0 0,rgba(255,106,43,.18),transparent 70%)}
.rate.big b{font-size:clamp(3rem,7vw,5.2rem);background:linear-gradient(180deg,#fff3cf,#ffcf6a 40%,#ff8a2a 75%,#d6381c);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;filter:drop-shadow(0 0 18px rgba(255,120,40,.4))}
.facts{--cut:16px;margin:0;padding:10px 26px}
.facts>div{display:flex;justify-content:space-between;gap:18px;padding:.95em 0;border-bottom:1px solid rgba(240,182,83,.12)}
.facts>div:last-child{border:0}
.facts dt{font:600 .84rem/1.3 var(--f-ui);letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}
.facts dd{margin:0;font:700 1.05rem/1.3 var(--f-ui);letter-spacing:.04em;color:#fff;text-align:right}
.info-more{text-align:center;margin:28px 0 0}
@media (max-width:900px){.info-grid{grid-template-columns:1fr}}
