/*
  Misma paleta que la pagina informativa (info.html) para que el jugador no note
  que son dos sitios distintos: una es estatica y esta es la que necesita cuenta.
*/
:root{
  --fondo:#0d0b14; --panel:#171425; --panel2:#1f1b30; --borde:#2e2743;
  --oro:#d9a441; --oro-claro:#f0c96b; --texto:#d8d3e6; --tenue:#8d86a8;
  --verde:#5fc27e; --rojo:#e06666;
}
*{box-sizing:border-box}
body{margin:0;background:var(--fondo);color:var(--texto);
  font-family:"Segoe UI",Roboto,system-ui,sans-serif;line-height:1.6}
a{color:var(--oro);text-decoration:none}
a:hover{text-decoration:underline}

header.portal{background:linear-gradient(180deg,#1b1729,#12101c);
  border-bottom:2px solid var(--oro);padding:16px 28px;
  display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}
header.portal .marca{font-size:1.2rem;letter-spacing:.14em;color:var(--oro-claro);
  text-transform:uppercase;font-weight:700}
header.portal nav a{margin-left:18px;font-size:.92rem;color:var(--texto)}
header.portal nav a:hover{color:var(--oro-claro);text-decoration:none}

main{max-width:1080px;margin:0 auto;padding:28px}

h1{color:var(--oro-claro);font-size:1.5rem;margin:0 0 20px}
h3{color:var(--oro-claro);font-size:1.05rem;margin:0 0 14px}

.caja-form{max-width:420px;margin:40px auto;background:var(--panel);
  border:1px solid var(--borde);border-radius:12px;padding:28px}
.caja-form label{display:block;margin:16px 0 6px;font-size:.8rem;
  letter-spacing:.1em;text-transform:uppercase;color:var(--tenue)}
.caja-form input[type=text],
.caja-form input[type=password]{width:100%;padding:11px 13px;border-radius:7px;
  border:1px solid var(--borde);background:#100e1a;color:var(--texto);font-size:.98rem}
.caja-form input:focus{outline:none;border-color:var(--oro)}
.ayuda{display:block;color:var(--tenue);font-size:.78rem;margin-top:5px}
.linea-check{display:flex!important;align-items:center;gap:9px;
  margin-top:18px!important;text-transform:none!important;letter-spacing:0!important;
  font-size:.92rem!important;color:var(--texto)!important}
.linea-check input{width:auto}
.pie-form{margin:20px 0 0;color:var(--tenue);font-size:.9rem;text-align:center}

.boton{display:inline-block;width:100%;margin-top:22px;padding:12px 18px;
  border:none;border-radius:7px;background:var(--oro);color:#1a1408;
  font-weight:700;font-size:.98rem;cursor:pointer;text-align:center}
.boton:hover{background:var(--oro-claro);text-decoration:none}
.boton.secundario{background:transparent;border:1px solid var(--borde);
  color:var(--tenue);font-weight:500;width:auto;padding:9px 18px}
.boton.secundario:hover{background:var(--panel2);color:var(--texto)}

.error{background:rgba(224,102,102,.1);border-left:3px solid var(--rojo);
  border-radius:0 7px 7px 0;padding:12px 16px;margin-bottom:6px;font-size:.92rem}
.error-campo{display:block;color:var(--rojo);font-size:.82rem;margin-top:5px}
.ok{background:rgba(95,194,126,.1);border-left:3px solid var(--verde);
  border-radius:0 7px 7px 0;padding:14px 18px;margin-bottom:8px;font-size:.94rem}

.tarjetas{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));
  gap:14px;margin-bottom:24px}
.tarjeta{background:var(--panel);border:1px solid var(--borde);
  border-radius:10px;padding:20px;text-align:center}
.tarjeta .valor{font-size:1.9rem;color:var(--oro);font-weight:700;line-height:1.2}
.tarjeta .valor.ok{color:var(--verde);background:none;border:none;padding:0;margin:0}
.tarjeta .valor.apagado{color:var(--tenue)}
.tarjeta .etiqueta{color:var(--tenue);font-size:.75rem;
  letter-spacing:.11em;text-transform:uppercase}

.caja{background:var(--panel);border:1px solid var(--borde);
  border-radius:10px;padding:20px;margin-bottom:20px;overflow-x:auto}
table{width:100%;border-collapse:collapse}
th{text-align:left;padding:9px 12px;color:var(--tenue);font-size:.72rem;
  letter-spacing:.11em;text-transform:uppercase;border-bottom:1px solid var(--borde)}
td{padding:9px 12px;border-bottom:1px solid rgba(46,39,67,.55);font-size:.93rem}
tr:last-child td{border-bottom:none}
.n{color:var(--oro);font-weight:600}

.aviso{background:rgba(217,164,65,.07);border-left:3px solid var(--oro);
  border-radius:0 8px 8px 0;padding:14px 18px;margin-bottom:20px;
  color:var(--tenue);font-size:.9rem}

@media(max-width:600px){
  main{padding:16px}
  .caja-form{margin:20px auto;padding:20px}
}

/* --- Portal Ascension: acabado visual de cuenta y tienda --- */
:root{
  --portal-bg:#08070f;
  --portal-panel:rgba(22,17,38,.88);
  --portal-panel-solid:#171127;
  --portal-line:rgba(191,164,255,.16);
  --portal-purple:#b493ff;
  --portal-gold:#ffc95b;
  --portal-green:#61e29a;
}
html{background:var(--portal-bg)}
body{min-height:100vh;background:
  radial-gradient(800px 420px at 82% -8%,rgba(112,71,196,.19),transparent 70%),
  radial-gradient(600px 340px at -12% 40%,rgba(45,98,180,.08),transparent 70%),
  var(--portal-bg);color:#f6f0ff}
body:before{content:"";position:fixed;inset:0;pointer-events:none;opacity:.12;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:52px 52px;mask-image:linear-gradient(to bottom,#000,transparent 82%)}
.portal-shell{position:sticky;top:0;z-index:30;border-bottom:1px solid var(--portal-line);background:rgba(8,7,15,.82);backdrop-filter:blur(18px)}
.portal-bar{width:min(1220px,calc(100% - 40px));min-height:76px;margin:0 auto;display:flex;align-items:center;gap:28px}
.portal-brand{display:inline-flex;align-items:center;min-width:215px;height:52px}
.portal-brand img{display:block;width:215px;height:auto;max-height:52px;object-fit:contain;object-position:left center}
.portal-nav{display:flex;align-items:center;gap:24px;margin-left:auto}
.portal-nav a,.nav-login,.nav-logout{color:#b6abc9;font-size:.86rem;font-weight:750;transition:color .2s,transform .2s}
.portal-nav a:hover,.nav-login:hover,.nav-logout:hover{color:var(--portal-gold);text-decoration:none}
.portal-account{display:flex;align-items:center;gap:14px;margin-left:4px}
.portal-account form{margin:0}
.nav-history{color:#a99cb8;font-size:.78rem;font-weight:800}.nav-history:hover{color:var(--portal-gold);text-decoration:none}
.account-chip{display:flex;align-items:center;gap:8px;padding:8px 12px;border:1px solid var(--portal-line);border-radius:999px;color:#f6f0ff;font-size:.84rem;font-weight:750;background:rgba(255,255,255,.04)}
.account-chip:hover{text-decoration:none;border-color:rgba(255,201,91,.45)}
.account-dot{width:8px;height:8px;border-radius:50%;background:var(--portal-green);box-shadow:0 0 12px var(--portal-green)}
.nav-logout{padding:0;border:0;background:none;cursor:pointer}
.nav-register{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 16px;border-radius:10px;color:#211505;background:linear-gradient(135deg,var(--portal-gold),#df9f2d);font-weight:850;box-shadow:0 8px 24px rgba(255,201,91,.18)}
.nav-register:hover{color:#211505;transform:translateY(-1px)}
.portal-main{width:min(1220px,calc(100% - 40px));margin:0 auto;padding:48px 0 80px;position:relative;z-index:1}
.portal-footer{border-top:1px solid var(--portal-line);background:rgba(13,9,24,.8)}
.portal-footer-inner{width:min(1220px,calc(100% - 40px));min-height:96px;margin:0 auto;display:flex;align-items:center;gap:22px;color:#8d82a2;font-size:.78rem}
.portal-footer-inner .footer-brand{min-width:160px;height:34px}.portal-footer-inner .footer-brand img{width:160px;max-height:34px}.portal-footer-inner p{margin:0;flex:1}.portal-footer-inner span{white-space:nowrap}
h1{font-size:clamp(2rem,4vw,3.1rem);line-height:1.08;letter-spacing:-.04em;background:linear-gradient(115deg,#fff 15%,var(--portal-purple) 58%,var(--portal-gold));-webkit-background-clip:text;background-clip:text;color:transparent}
h3{font-size:1.08rem}
.caja-form{max-width:520px;margin:22px auto;padding:34px;border:1px solid var(--portal-line);border-radius:22px;background:linear-gradient(145deg,rgba(31,21,54,.94),rgba(15,11,26,.94));box-shadow:0 25px 80px rgba(0,0,0,.28)}
.caja-form h1{margin-bottom:8px}.caja-form:before{content:"MU ASCENSION · ACCOUNT CENTER";display:block;margin-bottom:18px;color:var(--portal-gold);font-size:.68rem;font-weight:900;letter-spacing:.16em}
.caja-form label,.caja label{margin-top:18px;color:#a79bbd;font-weight:800}
.caja-form input,.caja-form select,.caja input,.caja select{width:100%;padding:13px 14px;border:1px solid rgba(191,164,255,.2);border-radius:11px;background:#0e0b18;color:#f6f0ff;font:inherit}
.caja-form input:focus,.caja-form select:focus,.caja input:focus,.caja select:focus{border-color:var(--portal-purple);box-shadow:0 0 0 3px rgba(180,147,255,.12)}
.boton{min-height:46px;border-radius:11px;background:linear-gradient(135deg,var(--portal-gold),#df9f2d);box-shadow:0 8px 25px rgba(255,201,91,.18);transition:transform .2s,box-shadow .2s}.boton:hover{background:linear-gradient(135deg,#ffd77c,var(--portal-gold));transform:translateY(-1px);box-shadow:0 12px 30px rgba(255,201,91,.27)}
.boton.secundario{border-color:var(--portal-line);background:rgba(255,255,255,.04);box-shadow:none;color:#d8d0e6}.boton.secundario:hover{background:rgba(180,147,255,.1)}
.caja,.tarjeta{border-color:var(--portal-line);border-radius:18px;background:var(--portal-panel);box-shadow:0 15px 45px rgba(0,0,0,.16)}
.tarjetas{gap:16px}.tarjeta{padding:24px}.tarjeta .valor{color:var(--portal-gold);font-size:2.1rem}.tarjeta .etiqueta{letter-spacing:.14em}
.panel-cuenta{max-width:1040px;margin:0 auto}.panel-cuenta>h1{margin-bottom:28px}
.panel-actions{display:flex;flex-wrap:wrap;gap:12px;margin:18px 0 28px}.panel-actions .boton{width:auto;margin:0}.panel-actions form{margin:0}
.account-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:28px}.account-hero p{margin:0;color:#9d91b3}.account-kicker{color:var(--portal-gold);font-size:.7rem;font-weight:900;letter-spacing:.16em;text-transform:uppercase}
.account-meta{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}.account-meta span{padding:6px 10px;border:1px solid var(--portal-line);border-radius:999px;color:#b9aecb;background:rgba(255,255,255,.03);font-size:.78rem}
.status-pill{display:inline-flex;padding:4px 10px;border-radius:999px;font-size:.74rem;font-weight:800}.status-pill.pending{color:var(--portal-gold);background:rgba(255,201,91,.11)}.status-pill.approved{color:var(--portal-green);background:rgba(97,226,154,.11)}.status-pill.rejected{color:#ff9191;background:rgba(255,100,100,.11)}
.tienda{max-width:1160px;margin:0 auto}.shop-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:22px;margin-bottom:24px}.shop-hero p{margin:8px 0 0;color:#9d91b3}.shop-hero h1{margin-bottom:0}.shop-balance{min-width:170px;padding:16px 20px;border:1px solid rgba(255,201,91,.3);border-radius:16px;text-align:right;background:linear-gradient(145deg,rgba(69,48,47,.65),rgba(29,20,40,.8))}.shop-balance strong{display:block;color:var(--portal-gold);font-size:1.55rem;line-height:1}.shop-balance span{display:block;color:#a99cb8;font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;margin-top:7px}
.shop-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin:24px 0 16px}.shop-filters{display:flex;flex-wrap:wrap;gap:8px}.shop-filter{border:1px solid var(--portal-line);border-radius:999px;padding:8px 13px;color:#a99cb8;background:rgba(255,255,255,.03);font:inherit;font-size:.78rem;font-weight:800;cursor:pointer}.shop-filter:hover,.shop-filter.active{border-color:var(--portal-gold);color:#241707;background:var(--portal-gold)}.shop-count{color:#8d82a2;font-size:.8rem}
.rejilla-articulos{grid-template-columns:repeat(auto-fill,minmax(205px,1fr));gap:16px}.articulo{position:relative;min-height:246px;padding:20px;border-color:var(--portal-line);background:linear-gradient(150deg,rgba(30,21,51,.94),rgba(15,11,26,.94));transition:transform .2s,border-color .2s,box-shadow .2s}.articulo:hover{transform:translateY(-4px);border-color:rgba(255,201,91,.46);box-shadow:0 18px 40px rgba(0,0,0,.25)}.articulo .imagen{height:88px;margin-bottom:5px;border-radius:12px;background:radial-gradient(circle,rgba(180,147,255,.13),transparent 68%)}.articulo .imagen img{max-width:72px;max-height:72px}.articulo .nombre{min-height:40px;font-size:.94rem}.articulo .precio{font-size:1.08rem}.articulo .boton{font-size:.84rem;padding:0 14px}.articulo .etiqueta-exc{color:#83e6ae;border-color:rgba(97,226,154,.35);background:rgba(97,226,154,.08)}
.aviso{border-left-color:var(--portal-gold);background:rgba(255,201,91,.07);color:#b6abc9}.aviso strong{color:#f5e4b6}
table th{color:#9488a8}table td{border-color:rgba(191,164,255,.1)}table tr:hover td{background:rgba(180,147,255,.035)}
.recargas-layout{display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:18px;align-items:start}.recargas-layout .caja{margin-bottom:0}.recarga-card h2{margin:0 0 8px;color:#fff;font-size:1.35rem}.recarga-card p{color:#a99cb8}.recarga-estimacion{display:flex;justify-content:space-between;align-items:center;margin-top:14px;padding:13px 14px;border:1px solid rgba(97,226,154,.25);border-radius:12px;background:rgba(97,226,154,.07)}.recarga-estimacion span{color:#a99cb8;font-size:.78rem}.recarga-estimacion strong{color:var(--portal-green);font-size:1.2rem}
.historial-title{display:flex;justify-content:space-between;align-items:center;gap:12px}.historial-title h2{margin:0;color:#fff;font-size:1.25rem}.historial-title a{color:var(--portal-gold);font-size:.8rem;font-weight:800}
@media(max-width:800px){.portal-bar{width:min(100% - 28px,620px);min-height:68px;gap:13px}.portal-brand{min-width:150px;height:40px}.portal-brand img{width:150px;max-height:40px}.portal-nav{display:none}.portal-account{margin-left:auto;gap:9px}.account-chip span:last-child{display:none}.nav-login{display:none}.portal-main{width:min(100% - 28px,620px);padding:30px 0 58px}.portal-footer-inner{width:min(100% - 28px,620px);padding:18px 0;flex-wrap:wrap;gap:8px}.portal-footer-inner p{flex-basis:100%;order:3}.shop-hero,.account-hero{align-items:stretch;flex-direction:column}.shop-balance{text-align:left}.recargas-layout{grid-template-columns:1fr}}

/* --- Tienda --- */
.cabecera-tienda{display:flex;align-items:center;justify-content:space-between;
  gap:16px;flex-wrap:wrap;margin-bottom:8px}
.cabecera-tienda h1{margin:0}
.saldo{background:var(--panel);border:1px solid var(--borde);border-radius:10px;
  padding:10px 20px;text-align:center}
.saldo .cifra{display:block;font-size:1.5rem;color:var(--oro);font-weight:700;line-height:1.2}
.saldo .etiqueta{font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:var(--tenue)}

.rejilla-articulos{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));
  gap:16px;margin:20px 0 26px}
.articulo{background:var(--panel);border:1px solid var(--borde);border-radius:12px;
  padding:18px;text-align:center;display:flex;flex-direction:column;gap:8px}
.articulo:hover{border-color:var(--oro)}
.articulo.sin-saldo{opacity:.55}
.articulo .imagen{height:64px;display:flex;align-items:center;justify-content:center}
.articulo .imagen img{max-width:56px;max-height:56px;object-fit:contain}
.articulo .nombre{font-weight:600;color:var(--texto);font-size:.95rem;line-height:1.3}
.articulo .etiqueta-exc{align-self:center;font-size:.68rem;letter-spacing:.1em;
  text-transform:uppercase;color:#7fd1a0;border:1px solid #2f5c44;
  border-radius:20px;padding:2px 10px}
.articulo .precio{color:var(--oro);font-weight:700;font-size:1.1rem;margin-top:auto}
.articulo .precio span{font-size:.7rem;color:var(--tenue);font-weight:400;
  letter-spacing:.1em;text-transform:uppercase}
.articulo .boton{margin-top:6px;width:100%}
.articulo button[disabled]{cursor:not-allowed}

/* Correcciones finales de cascada para la tienda y formularios */
.articulo[hidden]{display:none}
.item-placeholder{display:grid;place-items:center;width:58px;height:58px;border:1px solid rgba(255,201,91,.35);border-radius:16px;color:var(--portal-gold);font-size:1.55rem;background:rgba(255,201,91,.08)}
.rejilla-articulos{display:grid;grid-template-columns:repeat(auto-fill,minmax(205px,1fr));gap:16px;margin:20px 0 26px}
.articulo{position:relative;min-height:246px;padding:20px;border:1px solid var(--portal-line);border-radius:16px;background:linear-gradient(150deg,rgba(30,21,51,.94),rgba(15,11,26,.94));transition:transform .2s,border-color .2s,box-shadow .2s}
.articulo:hover{transform:translateY(-4px);border-color:rgba(255,201,91,.46);box-shadow:0 18px 40px rgba(0,0,0,.25)}
.articulo.sin-saldo{opacity:.62}.articulo .imagen{height:88px;margin-bottom:5px;border-radius:12px;background:radial-gradient(circle,rgba(180,147,255,.13),transparent 68%)}
.articulo .imagen img{max-width:72px;max-height:72px}.articulo .nombre{min-height:40px;font-size:.94rem}.articulo .precio{font-size:1.08rem}.articulo .boton{font-size:.84rem;padding:0 14px}.articulo .etiqueta-exc{color:#83e6ae;border-color:rgba(97,226,154,.35);background:rgba(97,226,154,.08)}
.form-intro{margin:0 0 20px;color:#a99cb8;line-height:1.6}.caja-form>.account-kicker{display:block;margin-bottom:10px}
.account-meta .account-dot{display:inline-block;margin-right:7px;vertical-align:middle}
@media(max-width:600px){.panel-actions .boton,.panel-actions form{width:100%}.panel-actions form .boton{width:100%}.historial-title{align-items:flex-start;flex-direction:column}}

/* Filtros avanzados de la tienda */
.shop-search-row{display:flex;align-items:center;gap:14px;margin:24px 0 16px}.shop-search{display:flex;align-items:center;gap:10px;flex:1;min-height:48px;padding:0 14px;border:1px solid var(--portal-line);border-radius:13px;background:rgba(255,255,255,.04);color:var(--portal-gold)}.shop-search:focus-within{border-color:var(--portal-purple);box-shadow:0 0 0 3px rgba(180,147,255,.1)}.shop-search input{width:100%;border:0;outline:0;background:transparent;color:#f6f0ff;font:inherit}.shop-search input::placeholder{color:#827791}.shop-search>span{font-size:1.35rem}.shop-filter-group{display:flex;align-items:flex-start;gap:14px;margin:12px 0}.shop-filter-label{flex:0 0 62px;padding-top:9px;color:#8d82a2;font-size:.68rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.shop-class-filter{border:1px solid var(--portal-line);border-radius:999px;padding:7px 11px;color:#a99cb8;background:rgba(255,255,255,.03);font:inherit;font-size:.74rem;font-weight:800;cursor:pointer}.shop-class-filter:hover,.shop-class-filter.active{border-color:var(--portal-purple);color:#160e2a;background:var(--portal-purple)}.clase-tags{display:flex;flex-wrap:wrap;justify-content:center;gap:4px;min-height:21px}.clase-tags span{padding:3px 6px;border:1px solid rgba(180,147,255,.25);border-radius:999px;color:#bda9e5;background:rgba(180,147,255,.07);font-size:.62rem;font-weight:900;letter-spacing:.05em}.shop-empty{margin:22px 0}.shop-empty[hidden]{display:none}
@media(max-width:700px){.shop-search-row,.shop-filter-group{align-items:stretch;flex-direction:column}.shop-filter-label{flex-basis:auto;padding-top:0}.shop-search-row .shop-count{align-self:flex-end}}

/* --- Portada publica --- */
.inicio{max-width:1220px;margin:0 auto}.inicio-hero{position:relative;display:grid;grid-template-columns:minmax(0,1.12fr) minmax(340px,.88fr);gap:32px;align-items:center;min-height:520px;padding:42px 10px 56px}.inicio-hero-copy{position:relative;z-index:2}.hero-kicker,.section-kicker{display:inline-flex;align-items:center;gap:8px;color:var(--portal-gold);font-size:.68rem;font-weight:900;letter-spacing:.17em;text-transform:uppercase}.live-dot{width:7px;height:7px;border-radius:50%;background:var(--portal-green);box-shadow:0 0 12px var(--portal-green)}.inicio-hero h1{margin:18px 0 20px;font-size:clamp(3.2rem,7vw,6.4rem);line-height:.95;letter-spacing:-.075em}.inicio-hero h1 span{background:linear-gradient(120deg,var(--portal-purple),var(--portal-gold));-webkit-background-clip:text;background-clip:text;color:transparent}.hero-lead{max-width:590px;margin:0;color:#aaa0bd;font-size:1.08rem;line-height:1.8}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}.hero-button{display:inline-flex;align-items:center;justify-content:center;gap:13px;min-height:48px;padding:0 20px;border:1px solid var(--portal-line);border-radius:12px;font-weight:850;font-size:.87rem;transition:transform .2s,box-shadow .2s,border-color .2s}.hero-button:hover{text-decoration:none;transform:translateY(-2px)}.hero-button.primary{color:#241707;background:linear-gradient(135deg,var(--portal-gold),#df9f2d);box-shadow:0 12px 32px rgba(255,201,91,.18)}.hero-button.primary:hover{box-shadow:0 18px 38px rgba(255,201,91,.3)}.hero-button.ghost{color:#d8d0e6;background:rgba(255,255,255,.035)}.hero-button.ghost:hover{border-color:rgba(255,201,91,.46);color:var(--portal-gold)}.hero-button span{font-size:1.2rem}.hero-trust{display:flex;flex-wrap:wrap;gap:12px 18px;margin-top:25px;color:#716684;font-size:.7rem}.hero-trust span{color:var(--portal-green);font-weight:900}
.inicio-hero-mark{position:relative;min-height:385px;display:grid;place-items:center}.hero-sigil{position:relative;z-index:2;width:min(310px,72%);aspect-ratio:1;display:grid;place-items:center;border:1px solid rgba(255,201,91,.35);border-radius:50%;background:radial-gradient(circle,rgba(112,71,196,.28),rgba(15,11,27,.84) 62%);box-shadow:0 0 90px rgba(112,71,196,.28),inset 0 0 55px rgba(255,201,91,.08)}.hero-sigil:after{content:"";position:absolute;inset:16px;border:1px solid rgba(180,147,255,.25);border-radius:50%}.hero-sigil img{width:75%;max-height:90px;object-fit:contain;filter:drop-shadow(0 15px 24px rgba(0,0,0,.45))}.hero-orbit{position:absolute;border:1px solid rgba(180,147,255,.16);border-radius:50%;transform:rotate(-24deg)}.orbit-one{width:94%;height:52%}.orbit-two{width:68%;height:82%;transform:rotate(34deg)}.hero-float{position:absolute;z-index:3;display:flex;flex-direction:column;gap:2px;padding:13px 16px;border:1px solid rgba(255,201,91,.28);border-radius:13px;background:rgba(22,17,38,.9);box-shadow:0 14px 28px rgba(0,0,0,.25);backdrop-filter:blur(10px)}.hero-float strong{color:var(--portal-gold);font-size:1.35rem;line-height:1}.hero-float span{color:#978bab;font-size:.64rem;letter-spacing:.08em;text-transform:uppercase}.hero-float-top{top:30px;right:3%}.hero-float-bottom{bottom:35px;left:2%}
.feature-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;margin:0 0 82px;border:1px solid var(--portal-line);border-radius:18px;overflow:hidden;background:var(--portal-line)}.feature-strip article{display:flex;align-items:center;gap:13px;min-height:100px;padding:18px;background:rgba(22,17,38,.78)}.feature-icon{display:grid;place-items:center;flex:0 0 38px;width:38px;height:38px;border:1px solid rgba(255,201,91,.3);border-radius:12px;color:var(--portal-gold);font-size:1.05rem}.feature-strip strong,.feature-strip small{display:block}.feature-strip strong{color:#f0e9fb;font-size:.82rem}.feature-strip small{margin-top:3px;color:#817694;font-size:.7rem;line-height:1.4}
.server-overview,.classes-section,.live-data-section{margin-bottom:84px}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:22px}.section-heading h2{margin:8px 0 0;color:#f7f2ff;font-size:clamp(1.65rem,3vw,2.3rem);letter-spacing:-.04em}.section-heading.compact{align-items:flex-end}.section-heading.compact>p{max-width:360px;margin:0;color:#8e82a5;font-size:.83rem;text-align:right}.section-link{color:var(--portal-gold);font-size:.78rem;font-weight:850}.section-link:hover{text-decoration:none;color:#ffe39a}.section-link span{font-size:1.05rem;margin-left:6px}.overview-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.overview-card{min-height:225px;padding:25px;border:1px solid var(--portal-line);border-radius:18px;background:linear-gradient(150deg,rgba(30,21,51,.92),rgba(15,11,26,.92))}.overview-card.featured{border-color:rgba(255,201,91,.35);background:linear-gradient(145deg,rgba(66,47,47,.68),rgba(25,17,40,.94))}.overview-label{display:block;color:#8d82a2;font-size:.64rem;font-weight:900;letter-spacing:.16em}.overview-card strong{display:block;margin:12px 0 8px;color:#f7f2ff;font-size:1.25rem}.overview-card p{min-height:54px;margin:0;color:#9d91b3;font-size:.8rem;line-height:1.6}.overview-line{display:flex;align-items:center;justify-content:space-between;margin-top:18px;padding-top:14px;border-top:1px solid var(--portal-line);color:#887c9f;font-size:.69rem}.overview-line b{color:var(--portal-gold);font-size:.78rem}.overview-line b.enabled{color:var(--portal-green)}.class-mini{display:flex;flex-wrap:wrap;gap:5px;margin-top:18px}.class-mini span,.class-card>span{display:grid;place-items:center;border:1px solid rgba(180,147,255,.28);border-radius:999px;color:var(--portal-purple);font-size:.62rem;font-weight:900}.class-mini span{width:30px;height:24px}
.class-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:10px}.class-card{display:flex;flex-direction:column;align-items:center;min-height:165px;padding:16px 10px;border:1px solid var(--portal-line);border-radius:16px;background:rgba(22,17,38,.76);text-align:center;transition:transform .2s,border-color .2s,background .2s}.class-card:hover{transform:translateY(-4px);border-color:rgba(255,201,91,.42);background:rgba(35,24,57,.94);text-decoration:none}.class-card>span{width:46px;height:46px;margin-bottom:14px;border-color:rgba(255,201,91,.35);color:var(--portal-gold);font-size:.72rem}.class-card strong{color:#eee7f9;font-size:.78rem}.class-card small{margin-top:7px;color:#847895;font-size:.66rem;line-height:1.45}
.data-updated{color:#7f7394;font-size:.7rem}.live-data-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.live-data-cards article{padding:20px;border:1px solid var(--portal-line);border-radius:16px;background:rgba(22,17,38,.78)}.live-data-cards strong{display:block;color:var(--portal-gold);font-size:1.8rem;line-height:1.1}.live-data-cards span{display:block;margin-top:8px;color:#887c9f;font-size:.69rem;text-transform:uppercase;letter-spacing:.1em}.drop-preview{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:14px;padding:25px;border:1px solid var(--portal-line);border-radius:18px;background:linear-gradient(100deg,rgba(30,21,51,.9),rgba(20,14,30,.9))}.drop-preview h3{margin:7px 0;color:#f7f2ff;font-size:1.05rem}.drop-preview p{max-width:650px;margin:0;color:#988cac;font-size:.8rem}.final-cta{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:34px 36px;border:1px solid rgba(255,201,91,.27);border-radius:22px;background:radial-gradient(circle at 10% 0,rgba(117,71,196,.25),transparent 48%),linear-gradient(120deg,rgba(37,27,59,.95),rgba(48,31,34,.9))}.final-cta h2{margin:8px 0 5px;color:#fff;font-size:1.75rem}.final-cta p{margin:0;color:#a99cb8;font-size:.84rem}
@media(max-width:960px){.inicio-hero{grid-template-columns:1fr;min-height:0}.inicio-hero-mark{min-height:330px;max-width:560px;margin:0 auto;width:100%}.class-grid{grid-template-columns:repeat(4,1fr)}.feature-strip{grid-template-columns:repeat(2,1fr)}}
@media(max-width:650px){.inicio-hero{padding-top:20px}.inicio-hero h1{font-size:3.55rem}.hero-lead{font-size:.94rem}.feature-strip,.overview-grid,.live-data-cards{grid-template-columns:1fr}.feature-strip article{min-height:78px}.section-heading,.drop-preview,.final-cta{align-items:flex-start;flex-direction:column}.section-heading.compact>p{text-align:left}.class-grid{grid-template-columns:repeat(2,1fr)}.hero-float-top{right:-1%}.hero-float-bottom{left:-1%}.final-cta{padding:26px}.final-cta .hero-button{width:100%}}

/* --- Ranking público --- */
.ranking-page{max-width:1160px;margin:0 auto}.ranking-hero{display:flex;align-items:center;justify-content:space-between;gap:28px;min-height:245px;padding:26px 8px 38px}.ranking-hero h1{max-width:720px;margin:13px 0 10px;color:#f8f3ff;font-size:clamp(2.25rem,5vw,4.45rem);line-height:1;letter-spacing:-.06em}.ranking-hero p{max-width:620px;margin:0;color:#a99cb8;font-size:1rem;line-height:1.7}.ranking-hero-mark{display:grid;place-items:center;flex:0 0 154px;width:154px;height:154px;border:1px solid rgba(255,201,91,.34);border-radius:50%;background:radial-gradient(circle,rgba(112,71,196,.35),rgba(22,17,38,.92) 65%);box-shadow:0 0 60px rgba(112,71,196,.2)}.ranking-hero-mark span{color:var(--portal-gold);font-size:4rem;line-height:.8}.ranking-hero-mark small{margin-top:10px;color:#bca9e2;font-size:.58rem;font-weight:900;letter-spacing:.15em;text-align:center}.ranking-meta{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:0 0 18px;padding:12px 16px;border:1px solid var(--portal-line);border-radius:12px;color:#8d82a2;font-size:.73rem;background:rgba(22,17,38,.6)}.ranking-meta span:first-child{color:#a99cb8}.ranking-live-dot{display:inline-block;width:7px;height:7px;margin-right:7px;border-radius:50%;background:var(--portal-green);box-shadow:0 0 10px var(--portal-green)}.ranking-tabs{display:flex;flex-wrap:wrap;gap:9px;margin:0 0 18px}.ranking-tab{padding:11px 17px;border:1px solid var(--portal-line);border-radius:999px;color:#a99cb8;background:rgba(255,255,255,.035);font:inherit;font-size:.8rem;font-weight:850;cursor:pointer;transition:background .2s,border-color .2s,color .2s}.ranking-tab:hover,.ranking-tab.active{border-color:var(--portal-gold);color:#241707;background:var(--portal-gold)}.ranking-panel{display:none;padding:28px;border:1px solid var(--portal-line);border-radius:20px;background:linear-gradient(145deg,rgba(30,21,51,.94),rgba(15,11,26,.94));box-shadow:0 20px 60px rgba(0,0,0,.18)}.ranking-panel.active{display:block}.ranking-panel-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:20px}.ranking-panel-heading h2{margin:8px 0 0;color:#f8f3ff;font-size:1.8rem;letter-spacing:-.04em}.ranking-panel-heading p{max-width:340px;margin:0;color:#9589a8;font-size:.77rem;line-height:1.55;text-align:right}.ranking-table-wrap{overflow-x:auto;border:1px solid rgba(191,164,255,.13);border-radius:13px}.ranking-table{width:100%;min-width:720px;border-collapse:collapse}.ranking-table th{padding:13px 14px;color:#8d82a2;background:rgba(255,255,255,.025);font-size:.65rem;font-weight:900;letter-spacing:.13em;text-transform:uppercase;text-align:left;white-space:nowrap}.ranking-table td{padding:14px;border-top:1px solid rgba(191,164,255,.1);color:#c5bbd5;font-size:.82rem;white-space:nowrap}.ranking-table tr:hover td{background:rgba(180,147,255,.045)}.ranking-table tr.top-ranking td{background:rgba(255,201,91,.035)}.ranking-position{display:grid;place-items:center;width:28px;height:28px;border:1px solid rgba(180,147,255,.25);border-radius:9px;color:#a99cb8;font-size:.74rem;font-weight:900}.position-1{border-color:rgba(255,201,91,.7);color:#241707;background:var(--portal-gold)}.position-2{border-color:rgba(215,221,232,.65);color:#1d1a23;background:#cfd5df}.position-3{border-color:rgba(202,134,79,.7);color:#28170d;background:#c98250}.ranking-name{color:#f2ebfb;font-size:.9rem}.ranking-class{color:#a995d0;font-size:.75rem}.ranking-gold{color:var(--portal-gold)}.ranking-empty{padding:30px!important;color:#8d82a2!important;text-align:center}.ranking-note{display:flex;gap:13px;margin-top:15px;padding:15px 17px;border-left:2px solid var(--portal-purple);border-radius:0 10px 10px 0;background:rgba(180,147,255,.06);color:#9589a8;font-size:.74rem;line-height:1.55}.ranking-note strong{flex:0 0 auto;color:#cbb5f0}.ranking-error{max-width:none;display:flex;gap:10px}.ranking-error span{color:#c1b6d0}
@media(max-width:650px){.ranking-hero{align-items:flex-start;flex-direction:column;padding-top:12px}.ranking-hero-mark{align-self:center}.ranking-panel{padding:18px 12px}.ranking-panel-heading{align-items:flex-start;flex-direction:column}.ranking-panel-heading p{text-align:left}.ranking-meta{flex-direction:column}.ranking-note{align-items:flex-start;flex-direction:column;gap:4px}}
