:root{
    --gold:#d4af5a;
    --gold-light:#f0e0b0;
    --gold-dark:#9a7b32;
    --moon:#c9d4e8;
    --void:#7a3aad;
    --void-purple:#2E0854;
    --void-deep:#12081f;
    --dark-bg:#06040c;
    --dark-surface:#0c0914;
    --dark-card:#14101e;
    --dark-border:#2a2238;
    --text-primary:#eee8f4;
    --text-secondary:#b7adc8;
    --text-muted:#7d738c;
    --success:#2E7D32;
    --danger:#C62828;
    --font-main:'Source Sans 3', 'Segoe UI', Tahoma, sans-serif;
    --font-heading:'Cinzel', Georgia, serif;
    --radius:14px;
    --radius-sm:8px;
    --shadow:0 18px 50px rgba(0,0,0,.45);
    --transition:all .3s ease;
    --nav-h:76px;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{
    font-family:var(--font-main);
    background:var(--dark-bg);
    color:var(--text-primary);
    line-height:1.65;
    min-height:100vh;
    background-image:
        radial-gradient(ellipse 80% 50% at 50% -10%, rgba(122,58,173,.18), transparent 55%),
        radial-gradient(ellipse 40% 30% at 90% 10%, rgba(212,175,90,.06), transparent 50%);
}
a{color:var(--gold);text-decoration:none;transition:var(--transition)}
a:hover{color:var(--gold-light)}
h1,h2,h3,h4{font-family:var(--font-heading);color:var(--gold-light);font-weight:700;letter-spacing:.04em;margin-bottom:.5em}
h1{font-size:2.5rem}h2{font-size:2rem}h3{font-size:1.45rem}
img{max-width:100%;display:block}
.container{max-width:1180px;margin:0 auto;padding:0 24px}
.kicker{
    font-family:var(--font-heading);
    letter-spacing:.28em;
    text-transform:uppercase;
    font-size:.72rem;
    color:var(--gold);
    margin-bottom:12px;
}

/* NAVBAR */
.navbar{
    position:fixed;top:0;left:0;right:0;z-index:1000;
    height:var(--nav-h);
    background:linear-gradient(180deg, rgba(6,4,12,.72), rgba(6,4,12,.15));
    border-bottom:1px solid transparent;
    transition:background .3s ease, border-color .3s ease, backdrop-filter .3s ease;
}
.navbar.is-scrolled{
    background:rgba(8,6,16,.92);
    backdrop-filter:blur(14px);
    border-bottom-color:rgba(212,175,90,.28);
}
.nav-inner,.navbar .container{display:flex;justify-content:space-between;align-items:center;height:var(--nav-h)}
.navbar-brand{display:flex;align-items:center;gap:12px;color:var(--gold-light)}
.brand-emblem{width:44px;height:44px;border-radius:50%;object-fit:cover;box-shadow:0 0 18px rgba(212,175,90,.28)}
.brand-text{font-family:var(--font-heading);font-size:1.15rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase}
.navbar-nav{display:flex;list-style:none;gap:4px;align-items:center}
.navbar-nav a{color:var(--text-secondary);padding:8px 14px;border-radius:var(--radius-sm);font-size:.92rem;font-weight:500}
.navbar-nav a:hover,.navbar-nav a.active{color:var(--gold-light);background:rgba(212,175,90,.1)}
.lang-switcher{display:flex;gap:2px;margin-left:12px;padding-left:14px;border-left:1px solid var(--dark-border)}
.lang-switcher a{padding:4px 7px;font-size:.75rem;letter-spacing:.06em;color:var(--text-muted)}
.lang-switcher a.active{color:var(--gold);background:rgba(212,175,90,.14)}
.mobile-toggle{display:none;background:none;border:none;color:var(--gold);font-size:1.6rem;cursor:pointer}

/* HERO */
.hero{
    position:relative;
    min-height:100vh;
    display:flex;
    align-items:flex-end;
    overflow:hidden;
    background:#05030a center/cover no-repeat;
}
.hero-veil{
    position:absolute;inset:0;
    background:
        linear-gradient(180deg, rgba(6,4,12,.35) 0%, rgba(6,4,12,.15) 35%, rgba(6,4,12,.82) 100%),
        radial-gradient(ellipse at 70% 20%, rgba(122,58,173,.18), transparent 50%);
}
.hero-content{position:relative;z-index:1;padding:0 0 88px;max-width:760px}
.hero h1{
    font-size:clamp(2.4rem, 6vw, 4.4rem);
    line-height:1.08;
    color:var(--gold-light);
    text-shadow:0 8px 40px rgba(0,0,0,.65);
    margin-bottom:18px;
}
.hero .lede{font-size:1.2rem;color:var(--moon);max-width:560px;margin-bottom:32px}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap}
.hero-particles{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:1}
.particle{position:absolute;width:2px;height:2px;background:var(--gold-light);border-radius:50%;opacity:.35;animation:fp 9s infinite ease-in-out}
@keyframes fp{0%,100%{transform:translateY(0);opacity:.2}50%{transform:translateY(-90px);opacity:.75}}

/* PAGE HERO */
.page-hero{
    position:relative;
    min-height:340px;
    padding:140px 0 72px;
    background:#05030a center/cover no-repeat;
    display:flex;align-items:flex-end;
}
.page-hero-veil{
    position:absolute;inset:0;
    background:linear-gradient(180deg, rgba(6,4,12,.45), rgba(6,4,12,.78));
}
.page-hero-content{position:relative;z-index:1}
.page-hero h1{font-size:clamp(2rem,4vw,3.2rem);margin-bottom:8px}
.page-hero-sub{color:var(--moon);max-width:620px}

/* BUTTONS */
.btn{display:inline-block;padding:13px 28px;border-radius:var(--radius-sm);font-weight:600;font-size:.95rem;cursor:pointer;transition:var(--transition);border:none;text-align:center;font-family:var(--font-main)}
.btn-primary{background:linear-gradient(180deg,var(--gold-light),var(--gold) 40%,var(--gold-dark));color:#1a1206;box-shadow:0 8px 24px rgba(212,175,90,.28)}
.btn-primary:hover{transform:translateY(-2px);color:#1a1206;box-shadow:0 12px 28px rgba(212,175,90,.4)}
.btn-secondary{background:transparent;color:var(--gold-light);border:1px solid rgba(212,175,90,.55)}
.btn-secondary:hover{background:rgba(212,175,90,.1);color:#fff}
.btn-danger{background:var(--danger);color:#fff}
.btn-sm{padding:8px 16px;font-size:.85rem}

/* CARDS */
.card{background:var(--dark-card);border:1px solid var(--dark-border);border-radius:var(--radius);padding:30px;transition:var(--transition)}
.card:hover{border-color:rgba(212,175,90,.4)}
.card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:28px;margin:40px 0}

.repack-card{
    background:var(--dark-card);
    border:1px solid var(--dark-border);
    border-radius:var(--radius);
    overflow:hidden;
    transition:var(--transition);
    display:flex;flex-direction:column;
}
.repack-card:hover{transform:translateY(-6px);border-color:rgba(212,175,90,.45);box-shadow:var(--shadow)}
.repack-media{position:relative;aspect-ratio:16/9;overflow:hidden;background:#0a0712}
.repack-media img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease}
.repack-card:hover .repack-media img{transform:scale(1.06)}
.repack-card-header{padding:22px 24px 0}
.repack-card-header h3{font-size:1.45rem;margin-bottom:8px}
.repack-card-body{padding:12px 24px 24px;flex:1;display:flex;flex-direction:column}
.repack-card-body p{color:var(--text-secondary);margin-bottom:14px}
.repack-card-body ul{list-style:none;margin-bottom:18px}
.repack-card-body li{padding:5px 0 5px 22px;color:var(--text-secondary);position:relative}
.repack-card-body li::before{content:'';position:absolute;left:0;top:13px;width:8px;height:8px;border-radius:50%;background:var(--gold);box-shadow:0 0 8px rgba(212,175,90,.7)}
.card-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:auto}

.version-badge{display:inline-block;background:rgba(212,175,90,.14);color:var(--gold);padding:4px 12px;border-radius:20px;font-size:.8rem;font-weight:600;letter-spacing:.04em}

/* FEATURED */
.featured{
    position:relative;
    display:grid;
    grid-template-columns:1.15fr .85fr;
    min-height:460px;
    border-radius:var(--radius);
    overflow:hidden;
    border:1px solid rgba(212,175,90,.28);
    margin:20px 0 10px;
}
.featured-media{position:relative;min-height:320px;background:#0a0712 center/cover no-repeat}
.featured-media::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg, transparent 40%, rgba(10,7,18,.55) 100%)}
.featured-copy{
    background:linear-gradient(180deg,#161022,#100c18);
    padding:48px 40px;
    display:flex;flex-direction:column;justify-content:center;
}
.featured-copy h2{font-size:2.4rem;margin-bottom:12px}
.featured-copy p{color:var(--text-secondary);margin-bottom:24px}
.featured-copy ul{list-style:none;margin:0 0 8px}
.featured-copy li{padding:5px 0 5px 22px;color:var(--text-secondary);position:relative}
.featured-copy li::before{content:'';position:absolute;left:0;top:13px;width:8px;height:8px;border-radius:50%;background:var(--gold)}

/* SECTIONS */
.section{padding:88px 0}
.section-title{text-align:center;margin-bottom:48px}
.section-title h2{margin-bottom:12px}
.section-title p{color:var(--text-secondary);font-size:1.05rem;max-width:620px;margin:0 auto}
.section-alt{background:rgba(12,9,20,.55)}

/* DOWNLOADS */
.download-item{display:flex;justify-content:space-between;align-items:center;background:var(--dark-card);border:1px solid var(--dark-border);border-radius:var(--radius-sm);padding:20px 25px;margin-bottom:15px;transition:var(--transition)}
.download-item:hover{border-color:rgba(212,175,90,.4)}
.download-info h4{color:var(--text-primary);margin-bottom:4px}
.download-info p{color:var(--text-muted);font-size:.9rem}
.download-meta{display:flex;gap:20px;align-items:center;color:var(--text-muted);font-size:.85rem}

.empty-state{text-align:center;padding:56px 28px}
.empty-state img{width:min(100%,520px);height:220px;object-fit:cover;border-radius:var(--radius);margin:0 auto 24px;opacity:.9}
.empty-state p{color:var(--text-muted)}

/* DISCORD / DONATE */
.discord-icon{width:80px;height:80px;background:#5865F2;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 20px;font-size:2rem;color:#fff}
.spotlight-card{
    max-width:640px;margin:0 auto;padding:48px 40px;text-align:center;
    background:var(--dark-card);border:1px solid rgba(212,175,90,.28);border-radius:var(--radius);
}

/* FOOTER */
.footer{position:relative;background:#080610;border-top:1px solid var(--dark-border);padding:72px 0 28px;margin-top:0;overflow:hidden}
.footer-moon{position:absolute;inset:0;background-size:cover;background-position:center 35%;opacity:.14;pointer-events:none}
.footer .container{position:relative;z-index:1}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:40px;margin-bottom:40px}
.footer-brand-row{display:flex;align-items:center;gap:12px;margin-bottom:12px}
.footer-brand-row img{width:40px;height:40px;border-radius:50%}
.footer h4{margin-bottom:16px;font-size:1rem}
.footer p,.footer a{color:var(--text-muted);font-size:.9rem}
.footer a:hover{color:var(--gold)}
.footer-links{list-style:none}
.footer-links li{margin-bottom:10px}
.footer-bottom{border-top:1px solid var(--dark-border);padding-top:20px;text-align:center;color:var(--text-muted);font-size:.85rem}

/* ADMIN */
.admin-layout{display:flex;min-height:100vh}
.admin-sidebar{width:260px;background:var(--dark-surface);border-right:1px solid var(--dark-border);padding:20px 0;position:fixed;height:100vh;overflow-y:auto}
.admin-sidebar .sidebar-header{padding:0 20px 20px;border-bottom:1px solid var(--dark-border);margin-bottom:20px}
.admin-sidebar .sidebar-header h3{font-size:1.2rem}
.admin-sidebar .nav-item{display:block;padding:12px 20px;color:var(--text-secondary);transition:var(--transition);font-size:.95rem}
.admin-sidebar .nav-item:hover,.admin-sidebar .nav-item.active{color:var(--gold);background:rgba(201,168,76,.08);border-left:3px solid var(--gold)}
.admin-main{flex:1;margin-left:260px;padding:30px}
.admin-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;padding-bottom:20px;border-bottom:1px solid var(--dark-border)}
.admin-card{background:var(--dark-card);border:1px solid var(--dark-border);border-radius:var(--radius);padding:25px;margin-bottom:20px}
.admin-card h3{margin-bottom:20px;padding-bottom:15px;border-bottom:1px solid var(--dark-border)}

/* FORMS */
.form-group{margin-bottom:20px}
.form-group label{display:block;margin-bottom:8px;font-weight:500}
.form-control{width:100%;padding:12px 16px;background:var(--dark-surface);border:1px solid var(--dark-border);border-radius:var(--radius-sm);color:var(--text-primary);font-size:.95rem;transition:var(--transition);font-family:var(--font-main)}
.form-control:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 3px rgba(201,168,76,.1)}
textarea.form-control{min-height:100px;resize:vertical}
select.form-control{appearance:none}

/* TABLE */
.table-responsive{overflow-x:auto}
table{width:100%;border-collapse:collapse}
table th,table td{padding:12px 16px;text-align:left;border-bottom:1px solid var(--dark-border)}
table th{background:var(--dark-surface);color:var(--gold);font-weight:600;font-size:.85rem;text-transform:uppercase}
table tr:hover{background:rgba(201,168,76,.03)}

/* FLASH */
.flash{padding:15px 20px;border-radius:var(--radius-sm);margin-bottom:20px;font-weight:500}
.flash-success{background:rgba(46,125,50,.15);border:1px solid var(--success);color:#66BB6A}
.flash-error{background:rgba(198,40,40,.15);border:1px solid var(--danger);color:#EF5350}

/* LOGIN */
.login-wrapper{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--dark-bg),var(--void-deep))}
.login-card{background:var(--dark-card);border:1px solid var(--dark-border);border-radius:var(--radius);padding:40px;width:100%;max-width:420px;box-shadow:var(--shadow)}

/* TABS */
.tabs{display:flex;gap:4px;margin-bottom:30px;border-bottom:2px solid var(--dark-border)}
.tab-btn{padding:12px 24px;background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:.95rem;transition:var(--transition);border-bottom:2px solid transparent;margin-bottom:-2px}
.tab-btn:hover{color:var(--text-primary)}
.tab-btn.active{color:var(--gold);border-bottom-color:var(--gold)}
.tab-content{display:none}.tab-content.active{display:block}

/* MEDIA */
.media-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:15px}
.media-item{aspect-ratio:1;border-radius:var(--radius-sm);overflow:hidden;border:2px solid var(--dark-border);position:relative}
.media-item img{width:100%;height:100%;object-fit:cover}

.wiki-article{background:var(--dark-card);border:1px solid var(--dark-border);border-radius:var(--radius);padding:30px;margin-bottom:20px}

/* RESPONSIVE */
@media(max-width:900px){
    .featured{grid-template-columns:1fr}
    .featured-media{min-height:240px}
    .featured-media::after{background:linear-gradient(180deg, transparent 30%, rgba(10,7,18,.5) 100%)}
}
@media(max-width:768px){
    .navbar-nav{display:none}
    .mobile-toggle{display:block}
    .navbar-nav.show{display:flex;flex-direction:column;position:absolute;top:var(--nav-h);left:0;right:0;background:rgba(10,8,18,.97);padding:18px 20px 24px;border-bottom:1px solid rgba(212,175,90,.3);align-items:stretch}
    .lang-switcher{margin:12px 0 0;padding:12px 0 0;border-left:none;border-top:1px solid var(--dark-border)}
    .hero{align-items:flex-end}
    .hero-content{padding-bottom:56px}
    .hero h1{font-size:2.15rem}
    .hero .lede{font-size:1rem}
    .card-grid{grid-template-columns:1fr}
    .footer-grid{grid-template-columns:1fr}
    .admin-sidebar{display:none}.admin-main{margin-left:0}
    .download-item{flex-direction:column;gap:15px;text-align:center}
    .page-hero{min-height:280px;padding:120px 0 48px}
}

::-webkit-scrollbar{width:8px}
::-webkit-scrollbar-track{background:var(--dark-bg)}
::-webkit-scrollbar-thumb{background:var(--dark-border);border-radius:4px}
::-webkit-scrollbar-thumb:hover{background:var(--gold-dark)}
