/* ==========================================================
 Shaiya Goat
   Full template stylesheet (English, Teos visual style)
   ========================================================== */

/* ---------- RESET / BASE ---------- */
*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{
    background:#0a0a0c;
    color:#fff;
    font-family:'Montserrat','Roboto',Arial,sans-serif;
    font-size:14px;
    line-height:1.5;
    min-height:100vh;
}
h1,.h1,h2,.h2,h3,.h3,h4,.h4,h5,.h5{font-family:'Montserrat','Roboto',sans-serif;font-weight:700}
a{color:#ffc107;text-decoration:none}
a:hover,a:focus{color:#ffd24a;text-decoration:none}
.text-primary{color:#c4b998!important}
.wrap{min-height:calc(100vh - 200px)}

/* ---------- NAVBAR ---------- */
.teos-navbar{
    background-color:#111!important;
    border-bottom:2px solid rgba(51,51,51,.25);
    box-shadow:0 0 6px 5px rgba(0,0,0,.4);
    font-family:'Montserrat',sans-serif;
    min-height:70px;
    z-index:3000000;
    position:absolute;
    width:100%;
}
.teos-brand{display:flex;align-items:center;gap:10px}
.teos-brand-name{
    font-family:'Montserrat',sans-serif;
    font-size:28px;
    font-weight:900;
    color:#c4b998;
    letter-spacing:4px;
}
.teos-navbar .navbar-nav .nav-item{margin-right:10px}
.teos-navbar .navbar-nav .nav-link{
    display:flex;
    position:relative;
    margin:auto;
    padding:0!important;
    flex-direction:column;
    justify-content:center;
    height:66px;
    color:#f9f9f9!important;
    font-size:13px;
    font-weight:600;
    line-height:120%;
    letter-spacing:.08em;
    overflow:hidden;
    text-transform:uppercase;
}
.teos-navbar .navbar-nav .nav-link p{
    padding:7.5px 16px;
    text-align:center;
    margin:0!important;
    margin-right:4px;
    transition:.2s;
}
.teos-navbar .navbar-nav .nav-link:hover p{
    background:rgba(128,128,128,.3);
    border-radius:6.4px;
}
.desktop-link-item-underline{
    opacity:0;
    background-color:#0bc4e2;
    position:absolute;
    bottom:7px;
    height:4px;
    width:100%;
    border-radius:2px;
    transition:.2s;
}
.teos-navbar .nav-link:hover .desktop-link-item-underline,
.teos-navbar .nav-link.active .desktop-link-item-underline{opacity:1}
.user-nav .nav-link p{background:rgba(128,128,128,.3);border-radius:6.4px}
.user-nav .nav-item.gold p{
    text-align:center;
    line-height:16px;
    position:relative;
    z-index:0;
    text-overflow:ellipsis;
    height:32px;
    border-radius:12px;
    padding:8px 16px;
    color:#111;
    background:linear-gradient(315deg,#e2960b 0%,#c2a62c 100%);
}
.user-nav .nav-link:hover p{filter:brightness(120%)}

/* ---------- BANNER ---------- */
.home-banner{
    position:relative;
    z-index:1;
    height:950px;
    filter:brightness(90%);
    display:flex;
    justify-content:center;
    align-items:center;
    background:url('/images/teos/hero-banner.jpg') no-repeat 50% center;
    background-size:cover;
}
.home-banner__item{
    width:100%;
    min-height:50px;
    display:flex;
    position:absolute;
    bottom:-50px;
    background:#0f0f0f;
    border-top:3px solid #1d1d1d;
    border-bottom:3px solid #1d1d1d;
    text-align:center;
    align-items:center;
    justify-content:center;
    box-shadow:0 0 16px 14px rgba(0,0,0,.4);
    padding:10px 20px;
}

/* ---------- LATEST / MAIN CONTENT ---------- */
.home-main{position:relative}
.latest{position:relative;overflow:hidden}
.latest .latestBackground{
    background-image:url('/images/teos/hero-banner.jpg');
    background-position:50%;
    background-size:cover;
    height:850px;
    position:absolute;
    top:-205px;
    right:0;
    bottom:40%;
    left:0;
    opacity:.15;
}
.latest .latestBackground .gradient{
    position:absolute;
    top:0;right:0;bottom:0;left:0;
    background-color:#0a0a0c;
    background-image:linear-gradient(180deg,#0a0a0c,rgba(0,0,0,0),#0a0a0c);
}

/* ---------- SECTION HEADER ---------- */
.majorSectionHeader{
    margin-top:15px;
    display:flex;
    align-items:center;
    justify-content:center;
    padding-top:80px;
}
.majorSectionHeader .line{
    position:relative;
    width:30%;
    display:flex;
    align-items:center;
    height:1px;
    background:linear-gradient(90deg,transparent,#373121,#373121,transparent);
}
.majorSectionHeader .titleStart{
    color:#c4b998;
    font-size:24px;
    letter-spacing:7px;
    position:relative;
    text-indent:8px;
    text-transform:uppercase;
    padding:0 20px;
    white-space:nowrap;
}
.teos-section-title{
    color:#c4b998;
    font-family:'Montserrat',sans-serif;
    font-size:22px;
    letter-spacing:5px;
    text-transform:uppercase;
    font-weight:700;
}

/* ---------- SOCIAL LINKS ---------- */
.social-links{
    display:flex;
    justify-content:center;
    align-items:center;
    gap:20px;
    width:100%;
    position:relative;
    z-index:999;
    margin-top:70px;
}
.social-links a{display:block;flex-shrink:0}
.social-links a .sl-btn{
    width:42px;height:42px;
    display:flex;align-items:center;justify-content:center;
    background:#111;
    border:1px solid #2a2a2a;
    color:#c4b998;
    border-radius:4px;
    transition:.2s;
    font-size:18px;
}
.social-links a:hover .sl-btn{background:#1a1a1a;transform:translateY(-2px);color:#fff}

/* ---------- DIAMOND BORDERS ---------- */
.ags-ContainerModule-container-imageBorderContainer{
    position:relative;
    padding:25px;
    background-color:rgba(7,7,7,.75);
    display:flex;
    flex-direction:column;
}
.ags-ContainerBorder{z-index:1;position:absolute;left:0;right:0}
.ags-ContainerBorder--top{top:-4px}
.ags-ContainerBorder--bottom{bottom:-4px;transform:rotate(180deg)}
.ags-ContainerBorder-diamond{
    width:9px;height:9px;
    border:1px solid #141312;
    background-image:radial-gradient(#545454,#8a898a);
    left:calc(50% - 4.5px);
    transform:rotate(45deg);
    position:absolute;
}
.ags-ContainerBorder-left,.ags-ContainerBorder-right{
    position:absolute;
    top:-2px;
    border-top:5px solid #4f4f4f;
    border-left:4px solid transparent;
    border-right:4px solid transparent;
}
.ags-ContainerBorder-left{left:-4px;right:calc(50% + 4px)}
.ags-ContainerBorder-right{right:-4px;left:calc(50% + 4px)}
.ags-ContainerBorder--light .ags-ContainerBorder-left,
.ags-ContainerBorder--light .ags-ContainerBorder-right{border-top:5px solid #545454b3}
.ags-ContainerBorder-left:before,.ags-ContainerBorder-right:before{
    content:"";
    position:absolute;
    left:-4px;right:-4px;top:-5px;
    border-top:4px solid #161616;
    border-left:4px solid transparent;
    border-right:4px solid transparent;
}

@media(min-width:1368px){.content--wide{width:1358px}}
.home-wrap{display:flex;margin:40px auto 10px;padding:0 15px}

/* ---------- FACTION HERO ---------- */
.ts-faction-hero{
    display:flex;
    flex-direction:column;
    align-items:center;
    padding:60px 20px;
    background:transparent;
    position:relative;
    border-top:1px solid rgba(255,255,255,.1);
}
.ts-faction-hero::before{
    content:"◆";
    position:absolute;
    top:-10px;left:50%;
    transform:translateX(-50%);
    background:#000;
    color:rgba(255,255,255,.4);
    padding:0 15px;
    font-size:14px;
}
.faction-call{
    color:#72a142;
    font-family:'Arial Black',sans-serif;
    font-size:24px;
    letter-spacing:4px;
    text-transform:uppercase;
    text-align:center;
    position:relative;
    animation:greenPulse 3.5s infinite ease-in-out;
}
@keyframes greenPulse{
    0%,100%{text-shadow:0 0 5px rgba(114,161,66,.3)}
    50%{text-shadow:0 0 20px rgba(114,161,66,.6),0 0 40px rgba(114,161,66,.3)}
}
.faction-sub{
    color:#c4b998;
    font-size:11px;
    letter-spacing:4px;
    text-transform:uppercase;
    margin-top:8px;
}

/* ---------- MVP SECTION ---------- */
.ts-mvp{max-width:824px;margin:20px auto}
.t-m-s{
    position:relative;
    display:flex;
    background:#000;
    border:1px solid #1a1a1a;
    overflow:hidden;
    height:100px;
}
.m-ba{
    position:absolute;top:0;left:0;
    width:40%;height:100%;
    background:linear-gradient(135deg,rgba(146,88,206,.15) 0,transparent 100%);
    pointer-events:none;z-index:2;
}
.m-pw{
    width:140px;height:100px;
    border-right:1px solid #1a1a1a;
    background:#0d0d0d;
    overflow:hidden;
    position:relative;
    z-index:3;
    flex-shrink:0;
    display:flex;align-items:center;justify-content:center;
    color:#c4b998;
    font-size:42px;
}
.m-ic{
    flex:1;display:flex;
    align-items:center;
    padding:0 25px;
    justify-content:space-between;
    position:relative;z-index:4;
}
.m-na{min-width:180px}
.m-l{
    color:#fff;
    font-size:11px;
    letter-spacing:2px;
    text-transform:uppercase;
    display:block;
    margin-bottom:4px;
    text-shadow:0 0 10px rgba(146,88,206,.8);
}
.m-n{
    margin:0;line-height:1;
    text-transform:uppercase;
    font-size:20px;
    color:#d2a784;
    font-weight:bold;
}
.m-sb{
    color:#999;font-size:9px;
    font-family:Arial,sans-serif;
    margin-top:5px;
    letter-spacing:1px;
    font-weight:bold;
}
.m-sg{
    display:flex;gap:30px;
    border-left:1px solid #1a1a1a;
    padding-left:25px;
}
.m-si{text-align:center}
.m-sl{
    display:block;color:#999;
    font-size:7px;text-transform:uppercase;
    letter-spacing:1.5px;margin-bottom:3px;
    font-weight:bold;
}
.m-sv{color:#fff;font-size:15px;font-weight:bold}
.m-sv.hl{color:#129974}
.m-sc{
    position:absolute;bottom:0;left:0;
    width:100%;height:2px;
    background:linear-gradient(90deg,transparent,#9258ce,transparent);
    opacity:.3;
}

/* ---------- SECTION HEADERS (subtitles) ---------- */
.h-h{display:flex;align-items:center;gap:15px;margin-bottom:10px;padding-left:5px}
.h-l{flex-grow:1;height:1px;background:#1a1a1a}
.mp-m{width:100%;margin:20px auto 10px auto;text-align:center;position:relative;z-index:9}
.mp-hd{
    font-size:11px;letter-spacing:3px;
    margin-bottom:20px;
    display:flex;align-items:center;justify-content:center;
    gap:8px;color:#888;
    text-shadow:1px 1px 2px rgba(0,0,0,.5);
    text-transform:uppercase;
}
.ps-d{
    width:7px;height:7px;
    background:#d9ba9d;border-radius:50%;
    box-shadow:0 0 8px #d9ba9d;
    animation:pd 1.5s infinite;
}
@keyframes pd{0%,100%{opacity:.4}50%{opacity:1}}

/* ---------- BOSS CARDS ---------- */
.ts-u{max-width:824px;margin:20px auto}
.bs-c{width:100%;overflow:hidden;padding:10px 0}
.bs-r{display:flex;justify-content:center;gap:10px;width:100%;margin:0 auto;flex-wrap:wrap}
.ep-c{
    position:relative;
    width:125px;height:260px;
    background:#000;
    border:1px solid #1a1a1a;
    border-radius:4px;
    overflow:hidden;
    transition:border-color .4s ease, box-shadow .4s ease;
}
.ep-c:hover{border-color:currentColor;box-shadow:0 0 15px rgba(255,255,255,.1);z-index:10}
.im-w{width:100%;height:100%;overflow:hidden;position:absolute;inset:0}
.ep-i{
    width:100%;height:140%;
    object-fit:cover;
    transform:translateY(-25%);
    filter:brightness(1) grayscale(0);
    transition:.6s;
}
.ep-c:hover .ep-i{filter:brightness(.6) grayscale(.5);transform:translateY(-25%) scale(1.1)}
.ep-o{
    position:absolute;inset:0;
    display:flex;flex-direction:column;
    justify-content:flex-end;
    padding:15px;
    background:linear-gradient(to top,rgba(0,0,0,1) 5%,rgba(0,0,0,.4) 40%,transparent 90%);
    pointer-events:none;
}
.ep-n{
    margin:0;color:#888;
    font-size:13px;font-weight:900;
    text-transform:uppercase;
    transition:.3s;
}
.ep-c:hover .ep-n{color:#fff;text-shadow:0 0 10px rgba(255,255,255,.3)}
.ep-l{height:1px;width:15px;margin:6px 0;transition:.5s;background:currentColor}
.ep-c:hover .ep-l{width:100%}
.ep-d{
    color:#aaa;font-size:9px;
    line-height:1.3;margin:0;
    max-height:0;opacity:0;
    transition:.5s;overflow:hidden;
    font-family:Arial,sans-serif;
}
.ep-c:hover .ep-d{max-height:80px;opacity:1;margin-top:5px}
.st{color:#b68a3a}.va{color:#a36ab6}.gr{color:#4c8a66}.cr{color:#3a8fb6}.ev{color:#9c3a3a}.ty{color:#3ab6b6}

/* ---------- FEATURE CARDS GRID ---------- */
.gr-g{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;max-width:824px;margin:20px auto}
.ho-c{
    height:220px;
    background:#000;
    border:1px solid #1a1a1a;
    border-radius:4px;
    position:relative;overflow:hidden;
    cursor:pointer;display:flex;
    transition:.4s cubic-bezier(.175,.885,.32,1.275);
    text-decoration:none;
}
.ho-c::after{
    content:"";position:absolute;inset:0;
    background-image:var(--bg);
    background-size:cover;background-position:center;
    opacity:.4;transition:.6s;z-index:1;
}
.ho-o{
    position:absolute;inset:0;z-index:5;
    background:linear-gradient(135deg,rgba(10,10,10,.55) 55%,transparent);
    transition:.4s;
}
.ho-ct{
    position:relative;z-index:10;
    padding:20px 25px;text-align:left;
    display:flex;flex-direction:column;
    justify-content:flex-end;width:100%;
}
.ho-t{
    font-size:15px;letter-spacing:1.5px;
    margin:0 0 10px 0;
    transition:.3s;color:#fff;
    text-shadow:2px 2px 4px #000;
    text-transform:uppercase;
}
.ho-ct p{
    font-size:12px;line-height:1.4;
    color:#888;margin:0 0 10px 0;
    transition:.3s;font-family:Arial,sans-serif;
    text-shadow:1px 1px 4px #000;
}
.ho-st{font-size:8px;color:#222;letter-spacing:1.5px;transition:.3s;text-transform:uppercase}
.ho-c:hover{border-color:currentColor}
.ho-c:hover::after{opacity:.95}
.ho-c:hover p{color:#fff}
.ho-c:hover .ho-st{color:currentColor}
.ho-c:hover .ho-t{text-shadow:0 0 10px currentColor,2px 2px 2px #000}
.hg{color:#3e8d41}.hy{color:#a18a6c}.hr{color:#9c4040}.hp{color:#734e9a}.ht{color:#407b8a}.ho{color:#cb7c16}

/* Disabled service card */
.ho-c-disabled{
    background:#0a0a0a!important;
    border:1px solid #1a1a1a!important;
    cursor:not-allowed;
    opacity:.45;
    filter:grayscale(1);
    pointer-events:none;
    color:#555!important;
    display:flex;align-items:center;
    border-radius:4px;
    position:relative;overflow:hidden;
    padding:0;
    text-decoration:none;
}
.ho-c-disabled::after{display:none}
.ho-c-disabled .ho-ct{padding:15px 20px;position:relative;z-index:2}
.ho-c-disabled .ho-t{color:#666!important;text-shadow:none!important;margin:0 0 4px 0;text-transform:uppercase}
.ho-c-disabled .ho-st{color:#444!important;letter-spacing:2px;font-size:9px;text-transform:uppercase}

/* ---------- SIDEBAR ---------- */
.faction-balance-title{
    color:#c4b998;
    font-size:16px;
    letter-spacing:4px;
    text-transform:uppercase;
    margin-top:25px;
    margin-bottom:15px;
    text-align:center;
}
.population .progress{
    border-radius:0;margin:0;
    background-color:#2d221f;
    box-sizing:content-box;
    height:30px;
}
.population .progress-bar{
    line-height:30px;
    font-size:11px;
    box-shadow:inset 0 0 15px rgba(0,0,1,.47),inset 0 0 2px #7e504c;
}
.population .progress-bar-aol{background-color:#15315a;border-right:1px solid #130e0c}
.progress-bar-uof{background-color:#621b1b;border-left:1px solid #130e0c}

.rating-list .rating-item{border-bottom:1px solid rgba(255,255,255,.05);padding:8px 0}
.rating-list .rating-item .place{
    display:inline-block;width:24px;height:24px;
    line-height:24px;text-align:center;
    border:1px solid #444;border-radius:50%;
    color:#888;font-size:12px;font-weight:bold;
}
.rating-list .rating-item:nth-child(1) .place{border-color:gold;color:gold}
.rating-list .rating-item:nth-child(2) .place{border-color:#c0c0c0;color:#c0c0c0}
.rating-list .rating-item:nth-child(3) .place{border-color:orange;color:orange}

.faction-dot{display:inline-block;width:10px;height:10px;border-radius:50%;margin:0 auto}
.faction-dot.faction-aol{background:#4a9eff;box-shadow:0 0 6px rgba(74,158,255,.5)}
.faction-dot.faction-uof{background:#ff4a4a;box-shadow:0 0 6px rgba(255,74,74,.5)}
.player-name{color:#888;font-size:13px}
.kill-count{color:#0bc4e2;font-size:13px;font-weight:600}

/* ---------- FORMS / INPUTS ---------- */
.teos-input,
input[type="text"].form-control,
input[type="password"].form-control,
input[type="email"].form-control,
input[type="date"].form-control,
select.form-control,
select.form-select,
textarea.form-control{
    background-color:#101217!important;
    border:1px solid #322c24!important;
    color:#c4b998!important;
    padding:10px 14px;
}
.teos-input::placeholder,
.form-control::placeholder{color:#6a5e4a!important}
.teos-input:focus,
.form-control:focus,
.form-select:focus{
    background-color:#14181d!important;
    border-color:#c4b998!important;
    color:#c4b998!important;
    box-shadow:0 0 0 0.2rem rgba(196,185,152,.15)!important;
}
.form-check-input:checked{background-color:#c4b998;border-color:#c4b998}

/* ---------- BUTTONS ---------- */
.btn-teos-gold{
    background:linear-gradient(315deg,#e2960b 0%,#c2a62c 100%);
    color:#111!important;
    font-weight:700;
    letter-spacing:2px;
    text-transform:uppercase;
    border:none;
    padding:10px 20px;
    border-radius:6px;
    transition:.2s;
}
.btn-teos-gold:hover{filter:brightness(120%);color:#111!important}
.btn-teos-dark,.btn-primary{
    background-color:#101217!important;
    border:1px solid #322c24!important;
    color:#c4b998!important;
    padding:11px 34px;
    text-transform:uppercase;
    letter-spacing:1.5px;
    font-weight:600;
    font-size:12px;
    border-radius:4px;
    transition:.2s;
}
.btn-teos-dark:hover,.btn-primary:hover{
    background-color:#14181d!important;
    border-color:#c4b998!important;
    color:#fff!important;
}
.btn-teos-outline{
    background:transparent;
    border:1px solid #c4b998;
    color:#c4b998!important;
    padding:8px 18px;
    text-transform:uppercase;
    letter-spacing:1.5px;
    font-weight:600;
    font-size:12px;
    border-radius:4px;
}
.btn-teos-outline:hover{background:#c4b998;color:#111!important}
.buybutton{
    background:linear-gradient(315deg,#e2960b 0%,#c2a62c 100%);
    color:#111;
    font-weight:700;
    border:none;
    padding:6px 16px;
    border-radius:4px;
    letter-spacing:1px;
    font-size:12px;
    text-transform:uppercase;
}
.buybutton:hover{filter:brightness(120%)}

/* ---------- MODAL ---------- */
.teos-modal{
    background:#0f1014!important;
    border:1px solid #222!important;
    border-radius:0!important;
    padding:25px 0;
    position:relative;
    color:#fff;
}

/* ---------- TABLES ---------- */
.teos-table,
.table-download,
.table{
    width:100%;
    color:#c4b998!important;
    background:transparent!important;
    border-collapse:separate;
    border-spacing:0;
}
.teos-table thead th,
.table-download thead td,
.table thead td,
.table thead th{
    background:#111!important;
    color:#c4b998!important;
    font-size:11px;
    text-transform:uppercase;
    letter-spacing:2px;
    padding:12px 14px;
    border-bottom:2px solid #322c24!important;
    font-weight:700;
}
.teos-table tbody td,
.table-download tbody td,
.table tbody td{
    background:rgba(7,7,7,.6)!important;
    color:#ddd!important;
    padding:12px 14px;
    border-bottom:1px solid #1a1a1a!important;
    font-size:13px;
}
.teos-table tbody tr:hover td,
.table-download tbody tr:hover td,
.table tbody tr:hover td{background:rgba(15,15,20,.8)!important}

/* ---------- PAGE CONTAINERS / WRAPPERS ---------- */
.page-section{padding:120px 0 60px 0;position:relative}
.page-container{max-width:1200px;margin:0 auto;padding:0 20px}
.page-title-wrap{
    display:flex;align-items:center;
    justify-content:center;
    margin-bottom:40px;
    gap:15px;
    padding-top:20px;
}
.page-title-line{flex:0 0 120px;height:1px;background:linear-gradient(90deg,transparent,#373121)}
.page-title-line.right{background:linear-gradient(90deg,#373121,transparent)}
.page-title{
    color:#c4b998;
    font-size:26px;
    letter-spacing:6px;
    text-transform:uppercase;
    margin:0;
    font-weight:700;
}

/* Content box similar to news container */
.content-box{
    position:relative;
    padding:30px;
    background-color:rgba(7,7,7,.75);
    margin:20px 0;
}

/* Legacy helper classes used by existing views */
.section-download{padding:120px 20px 40px 20px;max-width:1200px;margin:0 auto}
.section-title{
    text-align:center;
    color:#c4b998;
    font-size:22px;
    letter-spacing:5px;
    text-transform:uppercase;
    margin-bottom:30px;
    padding:20px 0;
}
.section-title .section-separator{
    display:inline-block;
    padding:0 30px;
    position:relative;
}
.section-title .section-separator::before,
.section-title .section-separator::after{
    content:"";
    position:absolute;
    top:50%;
    width:60px;height:1px;
    background:linear-gradient(90deg,transparent,#373121);
}
.section-title .section-separator::before{right:100%;margin-right:10px}
.section-title .section-separator::after{left:100%;margin-left:10px;background:linear-gradient(90deg,#373121,transparent)}

.download-wrapper,.web-store-wrapper,.ranking-wrapper,.profile-wrapper{
    padding:20px;
    background:rgba(7,7,7,.6);
    border:1px solid #1a1a1a;
    border-radius:4px;
}
.dSystem,.d-block{margin-bottom:30px;padding:20px;background:rgba(10,10,10,.6);border:1px solid #1a1a1a}
.d-title{
    color:#c4b998;
    font-size:16px;
    letter-spacing:3px;
    text-transform:uppercase;
    font-weight:700;
    margin-bottom:15px;
    padding-bottom:10px;
    border-bottom:1px solid #322c24;
}
.faq-block{
    margin-bottom:15px;
    padding:15px;
    background:rgba(15,15,15,.6);
    border-left:3px solid #c4b998;
}
.faq-block_title{color:#c4b998;font-weight:700;margin-bottom:8px;font-size:14px}
.faq-block_text{color:#aaa;font-size:13px;line-height:1.6}
.donation-select{
    background-color:#101217;
    color:#c4b998;
    border:1px solid #322c24;
    padding:6px 10px;
    border-radius:4px;
}
.table-top-scroll{overflow-x:auto}

/* ---------- PAGINATION ---------- */
.pagination{display:flex;justify-content:center;gap:6px;margin:20px 0;padding:0;list-style:none;flex-wrap:wrap}
.pagination a,.pagination span{
    display:inline-flex;align-items:center;justify-content:center;
    min-width:36px;height:36px;
    padding:0 10px;
    border:1px solid #322c24;
    color:#c4b998;
    background:#101217;
    text-decoration:none;
    font-size:13px;
    border-radius:4px;
}
.pagination a:hover{background:#14181d;color:#fff}
.pagination .active,.pagination a.active{background:linear-gradient(315deg,#e2960b,#c2a62c);color:#111;border-color:transparent;font-weight:700}
.pagination .disabled{opacity:.4;pointer-events:none}

/* ---------- NEWS GRID ---------- */
.news-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px;margin:20px 0}
.news-card{
    background:#0d0d0d;
    border:1px solid #1a1a1a;
    border-radius:4px;
    overflow:hidden;
    transition:.2s;
}
.news-card:hover{border-color:#c4b998;transform:translateY(-3px)}
.news-card img{width:100%;height:160px;object-fit:cover;display:block}
.news-card-body{padding:15px}
.news-card-date{color:#888;font-size:10px;letter-spacing:2px;text-transform:uppercase}
.news-card-title{color:#c4b998;font-size:15px;font-weight:700;margin:8px 0;text-transform:uppercase}
.news-card-excerpt{color:#888;font-size:12px;line-height:1.5;margin-bottom:10px}

/* ---------- RANKING PODIUM ---------- */
.podium{display:grid;grid-template-columns:1fr 1.1fr 1fr;gap:12px;margin-bottom:30px;align-items:end}
.podium-item{
    text-align:center;
    padding:20px 10px;
    background:#0d0d0d;
    border:1px solid #1a1a1a;
    border-radius:4px;
    position:relative;
}
.podium-item.rank-1{order:2;border-color:#d4af37;background:linear-gradient(180deg,rgba(212,175,55,.08),#0d0d0d)}
.podium-item.rank-2{order:1;border-color:#c0c0c0;background:linear-gradient(180deg,rgba(192,192,192,.06),#0d0d0d)}
.podium-item.rank-3{order:3;border-color:#cd7f32;background:linear-gradient(180deg,rgba(205,127,50,.06),#0d0d0d)}
.podium-medal{font-size:36px;margin-bottom:10px}
.podium-name{color:#c4b998;font-weight:700;font-size:15px;margin-bottom:5px;text-transform:uppercase}
.podium-kills{color:#0bc4e2;font-weight:700}
.ranking-row-online{color:#72a142}
.ranking-row-offline{color:#888}

/* ---------- FOOTER ---------- */
.teos-footer{
    background-color:#111;
    padding:0 0 28px 0;
    border-top:2px solid #343434;
    margin-top:100px;
}
.teos-footer .footer__links{
    display:flex;flex-wrap:wrap;
    width:100%;
    justify-content:center;
    user-select:none;
    box-sizing:border-box;
    background:#292929;
    padding:18px;margin:0;
    color:#7e7e7e;
    font-weight:700;font-size:13px;
    letter-spacing:.08em;
    text-align:center;
    text-transform:uppercase;
}
.teos-footer .footer__links a,
.teos-footer .footer-legal-links a{
    display:block;
    padding:8px 16px;
    text-decoration:none;
    color:#f9f9f9;
    transition:all .2s linear;
}
.teos-footer .footer__links a:hover,
.teos-footer .footer-legal-links a:hover{
    background:rgba(128,128,128,.3);
    border-radius:6.4px;
}
.teos-footer .footer__copyright{
    margin:0 auto;
    max-width:640px;
    padding:24px 0 8px;
    font-weight:500;font-size:13px;
    line-height:140%;
    text-align:center;
    word-break:keep-all;
    color:#7e7e7e;
}
.teos-footer .footer-legal-links{
    display:flex;justify-content:center;
    user-select:none;
    box-sizing:border-box;
    padding:24px 0 28px;
    font-weight:700;font-size:13px;
    letter-spacing:.08em;
    text-align:center;
    text-transform:uppercase;
    flex-wrap:wrap;
}

/* ---------- SWEETALERT OVERRIDES ---------- */
.swal2-popup{background:#0f1014!important;color:#c4b998!important;border:1px solid #322c24!important}
.swal2-title{color:#c4b998!important}
.swal2-confirm{
    background:linear-gradient(315deg,#e2960b,#c2a62c)!important;
    color:#111!important;
    font-weight:700!important;
    letter-spacing:2px!important;
}

/* ---------- HELPERS ---------- */
.text-gold{color:#c4b998!important}
.clear{clear:both}
.toTop{display:none}

/* ---------- ALERT BANNER (server-rendered flash messages) ---------- */
.teos-alert{
    position:fixed;
    top:80px;
    left:50%;
    transform:translateX(-50%);
    z-index:9999999;
    min-width:320px;
    max-width:90vw;
    box-shadow:0 10px 40px rgba(0,0,0,.7);
    border-radius:4px;
    animation:teosAlertIn .35s cubic-bezier(.23,1,.32,1);
    font-family:'Montserrat',sans-serif;
}
@keyframes teosAlertIn{
    from{opacity:0;transform:translate(-50%,-20px)}
    to{opacity:1;transform:translate(-50%,0)}
}
.teos-alert-inner{
    display:flex;align-items:center;gap:14px;
    padding:14px 20px;
    border:1px solid;
    border-radius:4px;
}
.teos-alert-icon{
    font-size:20px;font-weight:bold;
    width:32px;height:32px;min-width:32px;
    display:flex;align-items:center;justify-content:center;
    border-radius:50%;
}
.teos-alert-text{
    flex:1;
    color:#eee;
    font-size:14px;
    line-height:1.45;
}
.teos-alert-close{
    background:transparent;border:none;color:#fff;opacity:.6;
    font-size:24px;line-height:1;cursor:pointer;padding:0 0 0 8px;
}
.teos-alert-close:hover{opacity:1}
.teos-alert-success .teos-alert-inner{background:rgba(20,40,25,.95);border-color:#72a142}
.teos-alert-success .teos-alert-icon{background:#72a142;color:#fff}
.teos-alert-error   .teos-alert-inner{background:rgba(40,20,20,.95);border-color:#a14040}
.teos-alert-error   .teos-alert-icon{background:#a14040;color:#fff}
.teos-alert-warning .teos-alert-inner{background:rgba(40,30,10,.95);border-color:#c2a62c}
.teos-alert-warning .teos-alert-icon{background:#c2a62c;color:#111}
.teos-alert-info    .teos-alert-inner{background:rgba(15,30,40,.95);border-color:#407b8a}
.teos-alert-info    .teos-alert-icon{background:#407b8a;color:#fff}

/* ---------- RESPONSIVE ---------- */
@media(max-width:992px){
    .teos-navbar{position:relative;min-height:auto}
    .home-banner{height:300px}
    .home-wrap{flex-direction:column}
    .home-aside{width:100%!important;margin-top:20px}
    .teos-brand-name{font-size:22px;letter-spacing:3px}
}
@media(max-width:800px){
    .bs-r{flex-wrap:wrap;gap:8px}
    .ep-c{width:45%}
    .ep-c{height:220px}
    .gr-g{grid-template-columns:1fr}
    .m-sg{display:none}
    .podium{grid-template-columns:1fr;gap:8px}
    .podium-item.rank-1,.podium-item.rank-2,.podium-item.rank-3{order:initial}
}
@media(max-width:576px){
    .page-title{font-size:18px;letter-spacing:3px}
    .page-title-line{flex:0 0 40px}
    .section-download{padding:80px 15px 30px 15px}
    .teos-table thead th,.teos-table thead td,.table thead td,.table-download thead td{font-size:10px;padding:8px 6px}
    .teos-table tbody td,.table tbody td,.table-download tbody td{font-size:11px;padding:8px 6px}
}
