/* ===================================================================
   VEXRON — dark-fantasy PvP L2 Interlude theme for KaevCMS
   Block composition based on Kaev Aurelia's public theme (Livewire
   wire:navigate, persistent header, ornamented sections, footer CTA);
   full visual system reworked: void/twilight violet + antique gold +
   ember accents, Yeseva One / Inter (Cyrillic), a gold diamond "rift
   sigil" used as brand mark, section divider and rank/feature ornament.
   =================================================================== */

:root{
    --void:#0b0716;
    --abyss:#150f28;
    --abyss2:#1b1332;
    --twilight:#241a3f;
    --nebula:#4b2f73;
    --line:#3a2a5c;
    --panel:linear-gradient(160deg,rgba(27,19,50,.92),rgba(14,10,26,.95));
    --gold:#c9963c;
    --gold2:#eac878;
    --ember:#c1502e;
    --ember2:#e07a4f;
    --text:#ece5f5;
    --muted:#a89bc4;
    --green:#5fbf74;
    --danger:#e0715a;
    --warning:#f0a94e;
    --radius:14px;
    --radius-sm:8px;
    --shadow:0 28px 80px rgba(4,2,12,.55);
    --shadow-sm:0 14px 40px rgba(4,2,12,.4);
    --font-display:'Yeseva One',Georgia,serif;
    --font-body:'Inter',"Segoe UI",Arial,sans-serif;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
    margin:0;
    position:relative;
    background:var(--void);
    color:var(--text);
    font:15px/1.65 var(--font-body);
    overflow-x:hidden;
}
a{color:inherit;text-decoration:none}
button,input{font:inherit}
img{max-width:100%}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.container{width:min(1420px,calc(100% - 64px));margin:auto;position:relative}

/* ---------- ambient atmosphere layer ---------- */
.vx-atmosphere{
    position:fixed;inset:0;z-index:0;pointer-events:none;
    background:
        radial-gradient(600px 420px at 12% -6%,rgba(193,80,46,.16),transparent 60%),
        radial-gradient(720px 520px at 92% 8%,rgba(75,47,115,.35),transparent 60%),
        radial-gradient(900px 700px at 50% 110%,rgba(36,26,63,.55),transparent 60%),
        var(--void);
    background-size:200% 200%,200% 200%,200% 200%,auto;
    animation:vx-drift 42s ease-in-out infinite alternate;
}
@keyframes vx-drift{0%{background-position:0% 0%,100% 0%,50% 100%}100%{background-position:8% 6%,92% 10%,54% 96%}}
@media (prefers-reduced-motion:reduce){.vx-atmosphere{animation:none}}
.site-header,main,.site-footer{position:relative;z-index:1}

/* ---------- hero-load choreography (JS adds nothing; pure CSS, opt out on reduced motion) ---------- */
@media (prefers-reduced-motion:no-preference){
    .vx-in{opacity:0;transform:translateY(14px);animation:vx-rise .7s cubic-bezier(.19,1,.22,1) both;animation-delay:var(--vx-d,0s)}
}
@keyframes vx-rise{to{opacity:1;transform:none}}

/* ---------- signature sigil divider (used standalone on inner pages) ---------- */
.vx-divider{display:flex;align-items:center;gap:14px;padding:34px 0;pointer-events:none}
.vx-divider span{flex:1;height:1px;background:linear-gradient(90deg,transparent,rgba(201,150,60,.55),transparent)}
.vx-divider i{width:11px;height:11px;flex:0 0 auto;border:1px solid var(--gold);background:rgba(201,150,60,.18);transform:rotate(45deg)}

/* ---------- header ---------- */
html.public-is-navigating #public-content{opacity:.55;filter:saturate(.7);transition:opacity .2s ease,filter .2s ease}
.site-header{height:82px;background:rgba(11,7,22,.86);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid rgba(201,150,60,.25)}
.header-inner{height:100%;display:flex;align-items:center;gap:34px}
.brand{display:flex;align-items:center;gap:13px;min-width:max-content}
.brand-mark{width:46px;height:52px;flex:0 0 auto;display:grid;place-items:center;border:1px solid var(--gold);background:linear-gradient(160deg,rgba(201,150,60,.22),rgba(75,47,115,.28));clip-path:polygon(50% 0,100% 18%,86% 80%,50% 100%,14% 80%,0 18%)}
.brand-mark i{font-style:normal;font-family:var(--font-display);color:var(--gold2);font-size:20px}
.brand strong{display:block;font:26px/1 var(--font-display);letter-spacing:.05em;color:var(--text)}
.brand small{display:block;color:var(--muted);letter-spacing:.32em;font-size:9px;margin-top:7px;text-transform:uppercase}
.brand-logo{display:block;width:auto;max-width:230px;height:auto;max-height:54px;object-fit:contain}
.footer-brand-logo{max-width:250px;max-height:64px}
@media(max-width:780px){.brand-logo{max-width:180px;max-height:44px}.footer-brand-logo{max-width:220px;max-height:56px}}

.main-nav{display:flex;align-items:stretch;height:100%;margin-left:auto}
.main-nav a{position:relative;display:flex;align-items:center;padding:0 20px;text-transform:uppercase;font-size:12.5px;letter-spacing:.04em;color:#c7bfe0;transition:color .18s ease}
.main-nav a:after{content:"";position:absolute;left:20px;right:20px;bottom:0;height:2px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform .22s ease}
.main-nav a:hover,.main-nav a.active{color:var(--gold2)}
.main-nav a:hover:after,.main-nav a.active:after{transform:scaleX(1)}
.header-actions{display:flex;align-items:center;gap:14px}
.header-text-action{background:none;border:0;color:#c7bfe0;font:inherit;text-transform:uppercase;font-size:12.5px;letter-spacing:.04em;cursor:pointer;transition:color .18s ease}
.header-text-action:hover{color:var(--gold2)}
.header-main-action{padding:0 22px}

.button{min-height:42px;padding:0 24px;display:inline-flex;align-items:center;justify-content:center;gap:8px;text-transform:uppercase;letter-spacing:.05em;font-weight:600;font-size:12.5px;border-radius:999px;border:1px solid var(--line);background:rgba(21,15,40,.7);color:var(--text);cursor:pointer;transition:transform .18s ease,filter .18s ease,box-shadow .18s ease}
.button:hover{transform:translateY(-1px);filter:brightness(1.1)}
.button-gold{border-color:#8a6221;background:linear-gradient(160deg,var(--gold2),var(--gold) 55%,#8a6221);color:#241505;box-shadow:0 10px 26px rgba(201,150,60,.28),inset 0 1px rgba(255,255,255,.35)}
.button-ghost{background:rgba(21,15,40,.55);border-color:rgba(201,150,60,.3)}
.button-large{min-height:56px;padding:0 36px;font-size:13px}
.button-play{display:inline-grid;place-items:center;width:18px;height:18px;border:1px solid currentColor;border-radius:50%;font-size:8px}
.menu-toggle{display:none;flex-direction:column;gap:4px;align-items:center;justify-content:center;width:42px;height:42px;border-radius:var(--radius-sm);background:rgba(21,15,40,.55);border:1px solid var(--line);cursor:pointer}
.menu-toggle span{display:block;width:18px;height:2px;background:var(--gold2);transition:transform .2s ease,opacity .2s ease}

/* ---------- hero ---------- */
.hero{min-height:560px;position:relative;overflow:hidden;border-bottom:1px solid rgba(201,150,60,.25)}
.hero-art{
    position:absolute;inset:0;z-index:0;
    background:
        radial-gradient(1000px 620px at 78% -8%,rgba(201,150,60,.16),transparent 60%),
        radial-gradient(760px 520px at 92% 30%,rgba(193,80,46,.22),transparent 62%),
        radial-gradient(820px 640px at 6% 105%,rgba(75,47,115,.55),transparent 60%),
        linear-gradient(180deg,var(--void),var(--abyss) 65%,var(--void));
}
.hero-sigil{position:absolute;top:52%;left:78%;width:min(760px,110vw);height:min(760px,110vw);transform:translate(-50%,-50%) rotate(45deg);border:1px solid rgba(201,150,60,.12);pointer-events:none;z-index:0}
.hero-sigil:before,.hero-sigil:after{content:"";position:absolute;inset:9%;border:1px solid rgba(234,200,120,.08)}
.hero-sigil:after{inset:18%;border-color:rgba(193,80,46,.08)}
@media (prefers-reduced-motion:no-preference){.hero-sigil{animation:vx-sigil-spin 140s linear infinite}}
@keyframes vx-sigil-spin{to{transform:translate(-50%,-50%) rotate(405deg)}}
.hero-light{position:absolute;inset:0;z-index:1;background:radial-gradient(ellipse 60% 50% at 30% 40%,rgba(11,7,22,0) 0%,rgba(11,7,22,.55) 78%);pointer-events:none}
.hero-light:after{content:"";position:absolute;inset:auto 0 0;height:120px;background:linear-gradient(transparent,var(--void))}

.hero-content{position:relative;z-index:2;padding:96px 0 64px}
.hero-copy-block{max-width:640px}
.eyebrow{margin:0 0 14px;color:var(--gold2);letter-spacing:.3em;font-size:12px;text-transform:uppercase;font-weight:600}
.hero h1,.page-hero h1{font:clamp(46px,7vw,84px)/1 var(--font-display);letter-spacing:.02em;margin:0;background:linear-gradient(180deg,var(--gold2),var(--gold) 70%);-webkit-background-clip:text;background-clip:text;color:transparent;text-shadow:0 8px 40px rgba(201,150,60,.25)}
.hero-divider{display:flex;align-items:center;gap:14px;margin:23px 0 0;color:var(--gold)}
.hero-divider span{width:95px;height:1px;background:linear-gradient(90deg,transparent,rgba(201,150,60,.55))}
.hero-divider span:last-child{background:linear-gradient(90deg,rgba(201,150,60,.55),transparent)}
.hero-divider i{font-style:normal;font-size:12px}
.hero-meta{display:flex;flex-wrap:wrap;gap:10px 18px;margin:20px 0 0}
.hero-meta span{color:#d8c9ef;font:15px var(--font-display);letter-spacing:.04em}
.hero-meta span:not(:last-child):after{content:"·";margin-left:18px;color:var(--gold)}
.hero-copy{max-width:560px;color:var(--muted);font-size:16px;margin:20px 0 0}
.hero-actions{display:flex;gap:14px;margin-top:34px;flex-wrap:wrap}

/* ---------- home shell / panels ---------- */
.home-shell{padding-bottom:44px}
.panel{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);position:relative;overflow:hidden}
.panel:before{content:"";position:absolute;inset:0 0 auto;height:1px;background:linear-gradient(90deg,transparent,rgba(234,200,120,.5),transparent)}

.hero-feature-grid{position:relative;z-index:3;margin-top:-46px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.hero-feature-card{display:grid;grid-template-columns:60px 1fr 16px;align-items:center;gap:16px;padding:24px;transition:transform .2s ease,box-shadow .2s ease}
.hero-feature-card:hover{transform:translateY(-4px);box-shadow:0 30px 70px rgba(4,2,12,.6)}
.hero-feature-card h2{margin:0 0 7px;font:20px/1.2 var(--font-display);font-weight:400;color:#f1e6d0}
.hero-feature-card p{margin:0;color:var(--muted);font-size:12px;line-height:1.55}
.hero-feature-card>i{font-style:normal;color:var(--gold);font-size:22px}
.ornament-icon{width:52px;height:52px;display:grid;place-items:center;border:1px solid var(--gold);border-radius:50%;background:rgba(201,150,60,.08);color:var(--gold2);font-size:20px}
.ornament-icon::before{content:""}
.ornament-shield::before{content:"♜"}
.ornament-book::before{content:"▤"}
.ornament-sword::before{content:"⚔"}

.server-panel{margin-top:16px;padding:22px}
.server-panel-label{display:flex;align-items:center;gap:12px;margin-bottom:16px;color:var(--gold2);text-transform:uppercase;font-size:12px;letter-spacing:.1em}
.server-panel-label span{width:26px;height:1px;background:var(--gold)}
.server-list{display:grid;gap:10px}
.server-row{display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding:14px;border:1px solid rgba(58,42,92,.5);border-radius:var(--radius-sm);background:rgba(6,4,14,.35)}
.server-status-cell{display:flex;align-items:center;min-width:260px;gap:13px;padding-inline:10px 28px}
.status-dot{width:12px;height:12px;flex:0 0 auto;border-radius:50%;background:#7a6e9c}
.status-dot.online{background:var(--green);box-shadow:0 0 0 5px rgba(95,191,116,.14)}
.status-dot.offline{background:var(--danger)}
.status-dot.maintenance{background:var(--warning)}
.server-status-cell small{display:block;margin-bottom:2px;color:#8f81ae;font-size:8px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.server-status-cell strong{display:block;font:19px var(--font-display);font-weight:400;color:#f1e6d0}
.status{display:block;margin-top:3px;font-size:12px;text-transform:uppercase;letter-spacing:.03em}
.status.online{color:var(--green)}
.status.offline{color:var(--danger)}
.status.unknown{color:var(--muted)}
.status.maintenance{color:var(--warning)}
.server-maintenance-message{display:block;margin-top:3px;color:var(--muted);font-size:11px}
.server-stat{display:flex;align-items:center;gap:10px;min-width:150px;padding-inline:17px;border-left:1px solid rgba(58,42,92,.6)}
.server-stat small{display:block;margin:0 0 2px;color:#8f81ae;font-size:8px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.server-stat-icon{color:var(--gold);font-size:22px}
.server-stat strong{display:block;font:17px/1.1 var(--font-display);font-weight:400;color:#f1e6d0}
.server-arrow{margin-left:auto;width:34px;height:34px;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;color:var(--gold2);transition:border-color .18s ease,transform .18s ease}
.server-arrow:hover{border-color:var(--gold);transform:translateX(3px)}

/* ---------- section headings ---------- */
.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin:64px 0 26px}
.section-heading h2{margin:0;font:clamp(30px,3.6vw,46px)/1 var(--font-display);font-weight:400;letter-spacing:-.01em;color:#f1e6d0}
.section-heading-ornamented{align-items:center;justify-content:center;gap:20px;margin:64px 0 30px;text-align:center}
.section-heading-ornamented>span{width:86px;height:1px;background:linear-gradient(90deg,transparent,rgba(201,150,60,.5))}
.section-heading-ornamented>span:last-child{background:linear-gradient(90deg,rgba(201,150,60,.5),transparent)}
.section-heading-ornamented .eyebrow{margin-bottom:8px}
.section-more{display:flex;justify-content:center;margin-top:28px}

/* ---------- news showcase ---------- */
.news-showcase{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.news-card{display:flex;flex-direction:column;transition:transform .2s ease,box-shadow .2s ease}
.news-card:hover{transform:translateY(-4px);box-shadow:0 30px 70px rgba(4,2,12,.6)}
.news-card .news-thumb{min-height:170px;overflow:hidden;background:linear-gradient(135deg,var(--ember),var(--twilight));border-bottom:1px solid rgba(201,150,60,.2)}
.news-card .news-thumb img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .35s ease}
.news-card:hover .news-thumb img{transform:scale(1.035)}
.news-thumb-fallback{width:100%;height:100%;display:grid;place-items:center;color:var(--gold2);font-size:30px}
.news-thumb-fallback i{font-style:normal}
.news-card-copy{padding:22px 20px}
.news-card-copy time{color:var(--gold2);font-size:8px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.news-card-copy h3{margin:8px 0;font:19px/1.2 var(--font-display);font-weight:400;color:#f1e6d0}
.news-card-copy p{max-height:3.2em;overflow:hidden;margin:0;color:var(--muted);font-size:12px;line-height:1.6}
.news-read{display:inline-block;margin-top:14px;color:var(--gold2);text-transform:uppercase;font-size:11px;letter-spacing:.08em}
.empty-state{min-height:220px;display:grid;place-items:center;align-content:center;padding:40px;text-align:center;grid-column:1/-1}
.empty-state>span{color:var(--gold2);font-size:26px;margin-bottom:8px}

/* ---------- features ---------- */
.features-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.feature-card{display:flex;align-items:center;gap:16px;padding:26px;transition:transform .2s ease,background .2s ease}
.feature-card:hover{transform:translateY(-4px)}
.feature-icon{width:52px;height:52px;flex:0 0 52px;display:grid;place-items:center;color:var(--gold2);font-size:26px;border:1px solid var(--gold);border-radius:50%;background:rgba(201,150,60,.08)}
.feature-card h3{margin:0 0 6px;font:18px var(--font-display);font-weight:400;color:#f1e6d0}
.feature-card p{margin:0;color:var(--muted);font-size:12px;line-height:1.55}

/* ---------- footer ---------- */
.site-footer{border-top:1px solid rgba(201,150,60,.2);background:var(--void);margin-top:20px}
.footer-cta{display:grid;grid-template-columns:80px 1fr auto;align-items:center;gap:26px;position:relative;top:-30px;padding:30px 34px}
.footer-cta-mark{width:72px;height:72px;display:grid;place-items:center;border:1px solid rgba(201,150,60,.4);border-radius:50%;color:var(--gold2)}
.footer-cta-mark i{font-style:normal;font-family:var(--font-display);font-size:26px}
.footer-cta h2{margin:0;font:31px/1.1 var(--font-display);font-weight:400;color:#f1e6d0}
.footer-cta p:not(.eyebrow){margin:8px 0 0;color:var(--muted)}
.footer-cta-actions{display:flex;gap:10px}
.footer-grid{display:grid;grid-template-columns:1.5fr repeat(2,1fr) 90px;gap:44px;padding:0 0 44px;align-items:start}
.footer-intro{min-width:0}
.footer-grid p{color:var(--muted);max-width:360px}
.footer-grid h3{font:14px var(--font-display);text-transform:uppercase;color:#e6dcf5;font-weight:400}
.footer-section-links{display:grid;grid-auto-flow:column;grid-template-rows:repeat(3,auto);grid-auto-columns:minmax(150px,1fr);column-gap:28px;overflow-x:auto;scrollbar-width:thin}
.footer-section-links>a{display:block;color:var(--muted);margin:7px 0;white-space:nowrap;transition:color .18s ease}
.footer-section-links>a:hover{color:var(--gold2)}
.footer-sections,.footer-community{min-width:0}
.socials{display:flex;gap:8px}
.socials a{border:1px solid var(--line);border-radius:999px;padding:8px 14px;font-size:12px;transition:border-color .18s ease,color .18s ease}
.socials a:hover{border-color:var(--gold);color:var(--gold2)}
.footer-decoration{width:64px;height:64px;justify-self:end;align-self:center;opacity:.35;border:1px solid var(--gold);transform:rotate(45deg)}
.footer-bottom{display:flex;justify-content:space-between;color:#71678f;font-size:11px;border-top:1px solid rgba(58,42,92,.5);padding:18px 0}

@media(max-width:1150px){
    .header-actions .button-ghost{display:none}
    .hero-feature-grid{grid-template-columns:1fr 1fr}
    .news-showcase{grid-template-columns:1fr 1fr}
    .features-grid{grid-template-columns:1fr 1fr}
    .footer-grid{grid-template-columns:1fr 1fr}
    .footer-decoration{display:none}
}
@media(max-width:780px){
    .container{width:min(100% - 28px,1420px)}
    .site-header{height:68px}
    .brand strong{font-size:20px}
    .brand-mark{width:38px;height:44px}
    .menu-toggle{display:flex}
    .main-nav{display:none;position:absolute;left:0;right:0;top:68px;height:auto;background:rgba(11,7,22,.98);flex-direction:column;padding:12px}
    .main-nav.open{display:flex}
    .main-nav a{min-height:48px}
    .main-nav a:after{display:none}
    .header-actions{display:none}
    .hero{min-height:520px}
    .hero-content{padding-top:110px}
    .hero-actions{flex-direction:column;align-items:flex-start}
    .hero-feature-grid{grid-template-columns:1fr;margin-top:-30px}
    .server-status-cell{width:100%;padding:10px}
    .server-stat{min-width:33.333%;border-left:0;border-top:1px solid rgba(58,42,92,.5);padding-top:10px}
    .news-showcase{grid-template-columns:1fr}
    .features-grid{grid-template-columns:1fr}
    .footer-cta{grid-template-columns:1fr;top:-20px;padding:26px;text-align:center}
    .footer-cta-mark{margin:0 auto}
    .footer-cta-actions{flex-direction:column}
    .footer-grid{grid-template-columns:1fr 1fr}
    .footer-bottom{flex-direction:column;gap:8px}
}
@media(max-width:520px){
    .hero h1{font-size:38px}
    .server-stat{min-width:50%}
    .footer-grid{grid-template-columns:1fr}
}

/* ---------- generic page hero / content (news/statistics/pages/auth) ---------- */
.page-hero{padding:74px 0 50px;background:radial-gradient(700px 420px at 30% -10%,rgba(75,47,115,.4),transparent 60%),linear-gradient(180deg,var(--void),var(--abyss));border-bottom:1px solid rgba(201,150,60,.2)}
.page-hero h1{font-size:clamp(36px,5vw,54px)}
.page-content{padding:8px 0 44px}
.prose{padding:28px;color:#c8bfe0}
.prose h2{font-family:var(--font-display);font-weight:400;color:#f1e6d0}
.muted,.empty{color:var(--muted)}
.auth-page{min-height:650px;display:grid;place-items:center;padding:70px 20px;background:radial-gradient(900px 600px at 50% 0%,rgba(75,47,115,.35),transparent 60%),linear-gradient(180deg,var(--void),var(--abyss))}
.auth-card{width:min(460px,100%);padding:36px}
.auth-card h1{font:40px var(--font-display);margin:0;color:#f1e6d0}
.auth-card label,.auth-card small{display:block;color:var(--muted);font-size:12px;margin-bottom:14px}
.auth-card label small{display:block;margin-top:5px;margin-bottom:0;color:#8f81ae;line-height:1.4}
.auth-card input{display:block;width:100%;height:44px;margin-top:6px;border-radius:var(--radius-sm);background:rgba(6,4,14,.65);border:1px solid var(--line);color:var(--text);padding:0 13px;transition:border-color .18s ease,box-shadow .18s ease}
.auth-card input:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 3px rgba(201,150,60,.18)}
.auth-card .button{width:100%;margin-top:2px}
.auth-card form{margin-top:22px}
.auth-checkbox{display:flex !important;align-items:center;gap:9px;margin:2px 0 16px !important;cursor:pointer}
.auth-checkbox input{width:16px !important;height:16px !important;margin:0 !important;accent-color:var(--gold)}
.auth-links{display:flex;justify-content:space-between;gap:18px;margin-top:18px;font-size:12px}
.auth-links a{color:var(--gold2)}
.auth-links-center{justify-content:center}
.auth-info{margin:2px 0 16px;padding:11px 13px;border-left:2px solid var(--gold);background:rgba(201,150,60,.08);border-radius:0 var(--radius-sm) var(--radius-sm) 0;color:#d9cdee;font-size:12px}
.auth-info-error{border-color:var(--danger);background:rgba(224,113,90,.08);color:#f3b3a4}
.auth-message-card{text-align:center}
.auth-message-card .button{margin-top:18px}
.auth-message-card form+form{margin-top:10px}
@media(max-width:560px){.auth-links{align-items:center;flex-direction:column}}

/* ---------- account page ---------- */
.mobile-account-link{display:none !important}
.header-logout-form{margin:0}
.account-page{max-width:980px}
.account-card{padding:30px}
.account-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-bottom:22px;border-bottom:1px solid rgba(58,42,92,.6)}
.account-heading h2{margin:3px 0 0;font:32px var(--font-display);font-weight:400}
.account-label{color:var(--muted);font-size:10px;letter-spacing:.12em;text-transform:uppercase}
.account-status{padding:6px 12px;border:1px solid;border-radius:999px;font-size:11px;text-transform:uppercase}
.account-status.verified{border-color:rgba(95,191,116,.55);color:var(--green)}
.account-status.unverified{border-color:rgba(234,200,120,.55);color:var(--gold2)}
.account-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin:0}
.account-details div{padding:20px 0;border-left:0;border-bottom:1px solid rgba(58,42,92,.5)}
.account-details div:nth-child(odd){padding-right:24px}
.account-details div:nth-child(even){padding-left:24px;border-left:1px solid rgba(58,42,92,.5)}
.account-details dt{color:#8f81ae}
.account-details dd{overflow-wrap:anywhere;font-size:15px}
.account-note{margin-top:22px;padding:14px 16px;border-left:2px solid var(--gold);background:rgba(201,150,60,.07);border-radius:0 var(--radius-sm) var(--radius-sm) 0;color:#c3b8dc}
@media(max-width:780px){.mobile-account-link{display:flex !important}}
@media(max-width:560px){
    .account-heading{align-items:flex-start;flex-direction:column}
    .account-details{grid-template-columns:1fr}
    .account-details div:nth-child(odd),.account-details div:nth-child(even){padding:16px 0;border-left:0}
}

/* ---------- pagination / flash / preview banner ---------- */
.public-pagination{display:flex;align-items:center;justify-content:center;gap:16px;margin-top:22px;color:var(--muted);font-size:12px}
@media(max-width:520px){.public-pagination{justify-content:space-between;gap:8px}.public-pagination .button{padding:0 14px}.public-pagination span{font-size:10px;text-align:center}}
.public-flash-stack{position:relative;z-index:8;padding-top:14px}
.public-flash{padding:13px 16px;border:1px solid;border-radius:var(--radius-sm);background:rgba(21,15,40,.85);box-shadow:0 12px 35px rgba(0,0,0,.35)}
.public-flash p{margin:0}
.public-flash p+p{margin-top:5px}
.public-flash-success{border-color:rgba(95,191,116,.55);color:#a8e6b4}
.public-flash-warning{border-color:rgba(234,200,120,.55);color:var(--gold2)}
.public-flash-error{border-color:rgba(224,113,90,.58);color:#f3b3a4}
.news-preview-banner{position:sticky;top:0;z-index:1000;display:flex;align-items:center;justify-content:center;gap:12px;min-height:48px;padding:10px 18px;border-bottom:1px solid rgba(234,200,120,.55);background:var(--gold2);color:#241505;text-align:center;box-shadow:0 8px 24px rgba(0,0,0,.35)}
.news-preview-banner strong{font-weight:800}
.news-preview-banner span{opacity:.82;font-size:13px}
@media(max-width:680px){.news-preview-banner{align-items:flex-start;flex-direction:column;gap:2px;text-align:left}}

/* ---------- news list / article (news/index, news/show) ---------- */
.public-news-list{display:grid;gap:18px}
.public-news-card{display:grid;grid-template-columns:minmax(260px,34%) minmax(0,1fr);overflow:hidden}
.public-news-cover{min-height:230px;display:grid;place-items:center;overflow:hidden;background:linear-gradient(135deg,var(--ember),var(--twilight));color:var(--gold2);font:18px var(--font-display);letter-spacing:.1em}
.public-news-cover img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .35s ease}
.public-news-card:hover .public-news-cover img{transform:scale(1.025)}
.public-news-copy{padding:28px 30px}
.public-news-copy time{color:var(--gold2);font-size:12px}
.public-news-copy h2{margin:8px 0 10px;font:28px/1.2 var(--font-display);font-weight:400;color:#f1e6d0}
.public-news-copy p{margin:0;color:var(--muted)}
.public-news-more{display:inline-block;margin-top:18px;color:var(--gold2);text-transform:uppercase;font-size:11px;letter-spacing:.08em}
.news-page{display:grid;gap:20px;max-width:1050px}
.news-page-cover{margin:0;overflow:hidden;border-radius:var(--radius)}
.news-page-cover img{display:block;width:100%;max-height:590px;object-fit:cover}
.news-prose{padding:38px 44px;color:#cabfe4;font-size:16px;line-height:1.8}
.news-prose > :first-child{margin-top:0}
.news-prose > :last-child{margin-bottom:0}
.news-prose p{margin:0 0 1.15em}
.news-prose h2,.news-prose h3,.news-prose h4{color:#f1e6d0;font-family:var(--font-display);font-weight:400}
.news-prose h2{margin:1.5em 0 .55em;font-size:32px}
.news-prose h3{margin:1.35em 0 .5em;font-size:26px}
.news-prose h4{margin:1.2em 0 .45em;font-size:21px}
.news-prose strong{color:#f1e6d0}
.news-prose a{color:var(--gold2);text-decoration:underline;text-underline-offset:3px}
.news-prose ul,.news-prose ol{margin:1em 0 1.2em;padding-left:30px}
.news-prose li+li{margin-top:.35em}
.news-prose blockquote{margin:1.4em 0;padding:18px 22px;border-left:3px solid var(--gold);background:rgba(201,150,60,.08);color:#dccdb0}
.news-prose hr{margin:32px 0;border:0;border-top:1px solid var(--line)}
.news-prose figure{margin:28px 0}
.news-prose figure img{display:block;max-width:100%;height:auto;margin:0 auto;border:1px solid var(--line);border-radius:var(--radius-sm)}
.news-prose figcaption{margin-top:8px;color:var(--muted);font-size:12px;text-align:center}
.news-prose pre{overflow-x:auto;padding:18px;border:1px solid var(--line);background:var(--void);color:#dcd6ea;white-space:pre-wrap;border-radius:var(--radius-sm)}
.news-prose code{font-family:Consolas,"Courier New",monospace}
@media(max-width:780px){
    .public-news-card{grid-template-columns:1fr}
    .public-news-cover{min-height:190px}
    .public-news-copy{padding:22px}
    .public-news-copy h2{font-size:24px}
    .news-prose{padding:24px 20px;font-size:15px}
    .news-prose h2{font-size:27px}
    .news-prose h3{font-size:23px}
}

/* ---------- about page ---------- */
.about-server-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px;margin:20px 0}
.about-server-card{padding:18px;border:1px solid var(--line);border-radius:var(--radius-sm);background:rgba(21,15,40,.6)}
.about-server-card h3{margin:0 0 14px;color:var(--text);font:20px var(--font-display);font-weight:400}
.about-server-card dl{display:grid;gap:10px}
.about-server-card dl div{padding:0;border:0}

/* ---------- language switcher / rtl ---------- */
.language-switcher{display:inline-flex;align-items:center;gap:3px;padding:3px;border:1px solid rgba(201,150,60,.3);border-radius:999px;background:rgba(6,4,14,.4)}
.language-switcher a{min-width:31px;padding:6px 8px;border-radius:999px;color:rgba(236,229,245,.75);font-size:11px;font-weight:800;line-height:1;text-align:center;text-decoration:none}
.language-switcher a:hover,.language-switcher a.active{background:var(--gold);color:#241505}
[dir="rtl"] body{direction:rtl}
[dir="rtl"] .main-nav,[dir="rtl"] .header-actions,[dir="rtl"] .header-inner{flex-direction:row-reverse}
@media(max-width:980px){.language-switcher{margin-inline-start:auto}}

/* ---------- CMS pages ---------- */
.cms-page{max-width:980px}
.cms-page-prose{padding:clamp(24px,4vw,48px)}

/* ---------- statistics ---------- */
.compact-page-hero{padding:56px 0 38px}
.compact-page-hero h1{margin-bottom:8px}
.compact-page-hero p:last-child{max-width:720px;margin:0;color:var(--muted)}
.statistics-page{padding:8px 0 54px;position:relative;transition:opacity .18s ease}
.statistics-page.is-updating{opacity:.6}
.statistics-page.is-refreshed{animation:vx-flash .22s ease}
@keyframes vx-flash{from{opacity:.4}to{opacity:1}}
.statistics-partial-progress{position:absolute;top:0;left:0;right:0;height:2px;overflow:hidden;opacity:0;transition:opacity .18s ease}
.statistics-page.is-updating .statistics-partial-progress{opacity:1}
.statistics-partial-progress span{display:block;width:40%;height:100%;background:linear-gradient(90deg,transparent,var(--gold),transparent);animation:vx-progress 1s linear infinite}
@keyframes vx-progress{from{transform:translateX(-100%)}to{transform:translateX(350%)}}
.statistics-toolbar{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:16px;padding:18px 20px;border:1px solid var(--line);border-radius:var(--radius);background:rgba(21,15,40,.7)}
.statistics-toolbar>div>span{display:block;color:var(--muted);font-size:10px;letter-spacing:.12em;text-transform:uppercase}
.statistics-toolbar>div>strong{display:block;margin-top:3px;font:22px var(--font-display);font-weight:400}
.statistics-server-switcher,.statistics-tabs{display:flex;gap:6px;overflow-x:auto;scrollbar-width:thin}
.statistics-server-switcher a,.statistics-tabs a{min-height:40px;display:inline-flex;align-items:center;justify-content:center;padding:0 16px;border:1px solid var(--line);border-radius:999px;background:rgba(6,4,14,.4);color:#c7bfe0;white-space:nowrap;text-transform:uppercase;font-size:11px;letter-spacing:.04em;transition:border-color .18s ease,color .18s ease,background .18s ease}
.statistics-server-switcher a:hover,.statistics-server-switcher a.active,.statistics-tabs a:hover,.statistics-tabs a.active{border-color:var(--gold);background:rgba(201,150,60,.14);color:var(--gold2)}
.statistics-tabs{margin-bottom:16px;padding-bottom:2px}
.statistics-table-card{overflow:hidden}
.statistics-table-wrap{overflow-x:auto}
.statistics-table{width:100%;min-width:960px;border-collapse:collapse}
.statistics-table th,.statistics-table td{text-align:left;border-bottom:1px solid rgba(58,42,92,.5)}
.statistics-table th{padding:15px 16px;background:rgba(255,255,255,.02);font-size:10px;color:#9686bb;text-transform:uppercase;font-weight:600;letter-spacing:.04em}
.statistics-table td{padding:16px;vertical-align:middle;font-size:13px}
.statistics-table tbody tr{transition:background .18s ease}
.statistics-table tbody tr:hover{background:rgba(201,150,60,.05)}
.statistics-rank{width:32px;height:32px;display:inline-grid;place-items:center;border:1px solid var(--line);border-radius:8px;color:#c2b8de;font:14px var(--font-display)}
.statistics-table tbody tr:nth-child(1) .statistics-rank{border-color:#c9963c;background:rgba(201,150,60,.16);color:#f4d78e}
.statistics-table tbody tr:nth-child(2) .statistics-rank{border-color:#9086ab;background:rgba(144,134,171,.14);color:#dcd6ea}
.statistics-table tbody tr:nth-child(3) .statistics-rank{border-color:#a06a3f;background:rgba(160,106,63,.14);color:#e0ab7c}
.statistics-character{display:flex;align-items:center;gap:11px;min-width:180px}
.statistics-character>span{min-width:0}
.statistics-character-avatar{width:38px;height:38px;display:grid;place-items:center;flex:0 0 38px;overflow:hidden;border:1px solid var(--line);border-radius:10px;background:var(--abyss2);color:var(--gold2);font-weight:800}
.statistics-character-avatar>img{width:100%;height:100%;display:block;object-fit:cover;object-position:center}
.statistics-character strong,.statistics-character small{display:block}
.statistics-character strong{color:#f1e6d0;font-size:14px}
.statistics-character small{margin-top:3px;color:var(--muted);font-size:11px}
.statistics-value{color:var(--gold2);font-size:15px}
.statistics-value.danger{color:#e79b8f}
.statistics-online{color:var(--muted);font-size:11px;text-transform:uppercase}
.statistics-online:before{content:"";width:7px;height:7px;display:inline-block;margin-right:7px;border-radius:50%;background:#7a6e9c}
.statistics-online.online{color:var(--green)}
.statistics-online.online:before{background:var(--green);box-shadow:0 0 9px rgba(95,191,116,.55)}
.statistics-hero-badge{display:inline-flex;align-items:center;min-height:28px;padding:0 12px;border:1px solid var(--gold);border-radius:999px;background:linear-gradient(135deg,rgba(201,150,60,.22),rgba(75,47,115,.18));color:#f4d78e;font-size:10px;letter-spacing:.08em;text-transform:uppercase}
.statistics-empty-state{min-height:300px;display:grid;place-items:center;align-content:center;padding:40px;text-align:center}
.statistics-empty-state>span{width:58px;height:58px;display:grid;place-items:center;margin-bottom:14px;border:1px solid var(--gold);color:var(--gold2);font:24px var(--font-display);transform:rotate(45deg)}
.statistics-empty-state>span i{display:block;font-style:normal;transform:rotate(-45deg)}
.statistics-empty-state h2{margin:0;font:26px var(--font-display);font-weight:400;color:#f1e6d0}
.statistics-empty-state p{max-width:560px;margin:10px 0 0;color:var(--muted)}
.statistics-error-state>span{border-color:rgba(224,113,90,.6);color:#e79b8f}
.castle-owner-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(310px,1fr));gap:16px}
.castle-owner-card{display:grid;grid-template-columns:64px 1fr;gap:20px;padding:26px}
.castle-owner-mark{width:58px;height:58px;display:grid;place-items:center;border:1px solid var(--gold);border-radius:var(--radius-sm);color:var(--gold2);font-size:27px}
.castle-owner-card span{color:var(--muted);font-size:10px;letter-spacing:.12em;text-transform:uppercase}
.castle-owner-card h2{margin:2px 0 8px;font:27px var(--font-display);font-weight:400;color:#f1e6d0}
.castle-owner-card>div>strong{color:var(--gold2);font-size:15px}
.castle-owner-card dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:18px}
.castle-owner-card dl div{padding:0 12px}
.castle-owner-card dl div:first-child{padding-left:0;border-left:0}
.castle-owner-card dd{overflow-wrap:anywhere}
@media(max-width:780px){
    .statistics-toolbar{align-items:flex-start;flex-direction:column}
    .statistics-server-switcher{width:100%}
    .statistics-server-switcher a{flex:1}
    .castle-owner-card{grid-template-columns:1fr}
    .castle-owner-card dl{grid-template-columns:1fr}
    .castle-owner-card dl div{padding:10px 0;border-left:0;border-top:1px solid rgba(58,42,92,.5)}
}

/* ---------- rich content colors (admin editor output — semantic, not palette-restyled) ---------- */
:where(.news-prose,.cms-page-prose) [data-color="gold"]{color:#dfb568}
:where(.news-prose,.cms-page-prose) [data-color="amber"]{color:#fbbf24}
:where(.news-prose,.cms-page-prose) [data-color="yellow"]{color:#fde047}
:where(.news-prose,.cms-page-prose) [data-color="red"]{color:#f87171}
:where(.news-prose,.cms-page-prose) [data-color="rose"]{color:#fb7185}
:where(.news-prose,.cms-page-prose) [data-color="coral"]{color:#fb8a78}
:where(.news-prose,.cms-page-prose) [data-color="orange"]{color:#fb923c}
:where(.news-prose,.cms-page-prose) [data-color="brown"]{color:#d6a36a}
:where(.news-prose,.cms-page-prose) [data-color="lime"]{color:#a3e635}
:where(.news-prose,.cms-page-prose) [data-color="green"]{color:#72ca7e}
:where(.news-prose,.cms-page-prose) [data-color="emerald"]{color:#6ee7b7}
:where(.news-prose,.cms-page-prose) [data-color="teal"]{color:#5eead4}
:where(.news-prose,.cms-page-prose) [data-color="cyan"]{color:#67e8f9}
:where(.news-prose,.cms-page-prose) [data-color="sky"]{color:#7dd3fc}
:where(.news-prose,.cms-page-prose) [data-color="blue"]{color:#76a9ea}
:where(.news-prose,.cms-page-prose) [data-color="indigo"]{color:#a5b4fc}
:where(.news-prose,.cms-page-prose) [data-color="violet"]{color:#c4b5fd}
:where(.news-prose,.cms-page-prose) [data-color="purple"]{color:#d8b4fe}
:where(.news-prose,.cms-page-prose) [data-color="fuchsia"]{color:#f0abfc}
:where(.news-prose,.cms-page-prose) [data-color="pink"]{color:#f9a8d4}
:where(.news-prose,.cms-page-prose) [data-color="slate"]{color:#cbd5e1}
:where(.news-prose,.cms-page-prose) [data-color="gray"]{color:#9ca3af}
:where(.news-prose,.cms-page-prose) [data-color="zinc"]{color:#a1a1aa}
:where(.news-prose,.cms-page-prose) [data-color="muted"]{color:#8f81ae}
:where(.news-prose,.cms-page-prose) [data-highlight]{padding-inline:.12em;border-radius:.18em;color:#15181a;box-decoration-break:clone;-webkit-box-decoration-break:clone}
:where(.news-prose,.cms-page-prose) [data-highlight="yellow"]{background:#f9e68a}
:where(.news-prose,.cms-page-prose) [data-highlight="amber"]{background:#f8d477}
:where(.news-prose,.cms-page-prose) [data-highlight="orange"]{background:#f6c995}
:where(.news-prose,.cms-page-prose) [data-highlight="rose"]{background:#f4b6c2}
:where(.news-prose,.cms-page-prose) [data-highlight="red"]{background:#f3b2b2}
:where(.news-prose,.cms-page-prose) [data-highlight="lime"]{background:#cfe88b}
:where(.news-prose,.cms-page-prose) [data-highlight="green"]{background:#a9dab1}
:where(.news-prose,.cms-page-prose) [data-highlight="teal"]{background:#91d8ca}
:where(.news-prose,.cms-page-prose) [data-highlight="cyan"]{background:#9edce4}
:where(.news-prose,.cms-page-prose) [data-highlight="blue"]{background:#a9c9ed}
:where(.news-prose,.cms-page-prose) [data-highlight="purple"]{background:#d5b7ea}
:where(.news-prose,.cms-page-prose) [data-highlight="gray"]{background:#c8cccd}
:where(.news-prose,.cms-page-prose) [data-text-size="small"]{font-size:.84em}
:where(.news-prose,.cms-page-prose) [data-text-size="large"]{font-size:1.25em;line-height:1.5}
:where(.news-prose,.cms-page-prose) [data-align="center"]{text-align:center}
:where(.news-prose,.cms-page-prose) [data-align="right"]{text-align:right}
:where(.news-prose,.cms-page-prose) [data-align="justify"]{text-align:justify}
:where(.news-prose,.cms-page-prose) figure{max-width:100%}
:where(.news-prose,.cms-page-prose) figure img{display:block;width:100%;max-width:100%;height:auto}
:where(.news-prose,.cms-page-prose) figure[data-size="narrow"]{width:45%}
:where(.news-prose,.cms-page-prose) figure[data-size="medium"]{width:65%}
:where(.news-prose,.cms-page-prose) figure[data-size="wide"]{width:85%}
:where(.news-prose,.cms-page-prose) figure[data-align="center"]{margin-right:auto;margin-left:auto}
:where(.news-prose,.cms-page-prose) figure[data-align="right"]{margin-left:auto}
:where(.news-prose,.cms-page-prose) table{display:block;overflow-x:auto;width:100%;margin:24px 0;border:1px solid var(--line);border-collapse:collapse}
:where(.news-prose,.cms-page-prose) th,:where(.news-prose,.cms-page-prose) td{min-width:120px;padding:10px 13px;border:1px solid var(--line);vertical-align:top}
:where(.news-prose,.cms-page-prose) th{background:rgba(201,150,60,.08);color:#e9dfc4}
:where(.news-prose,.cms-page-prose) code{padding:.12em .32em;background:var(--void);color:#e7c27c;border-radius:4px}
:where(.news-prose,.cms-page-prose) pre code{padding:0;background:transparent;color:inherit}
@media(max-width:780px){
    :where(.news-prose,.cms-page-prose) figure[data-size="narrow"]{width:65%}
    :where(.news-prose,.cms-page-prose) figure[data-size="medium"],
    :where(.news-prose,.cms-page-prose) figure[data-size="wide"]{width:100%}
}

/* ---------- scroll reveal (progressive enhancement, JS-added class) ---------- */
.vx-reveal{opacity:0;transform:translateY(16px);transition:opacity .6s ease,transform .6s ease}
.vx-reveal.vx-revealed{opacity:1;transform:none}

/* ---------- mobile footer containment ---------- */
@media(max-width:780px){
    .footer-grid>*,.footer-bottom>*{min-width:0;max-width:100%;overflow-wrap:anywhere}
    .socials{min-width:0;flex-wrap:wrap}
}
