/* ================================================
   MAYA2 - JADE & GOLD THEME
   Caricato dopo theme.css: ne sovrascrive i colori
   ================================================ */
@import url('https://fonts.googleapis.com/css2?family=Cinzel:wght@500;600;700;800&family=Inter:wght@400;500;600;700&display=swap');

:root {
    --m-jade:       #3ddc84;
    --m-jade-hi:    #8dffb9;
    --m-jade-deep:  #169a55;
    --m-jade-dim:   #0c3a24;
    --m-gold:       #d9b76a;
    --m-gold-hi:    #f3dc9e;
    --m-bg:         #050907;
    --m-panel:      rgba(9, 18, 13, 0.86);
    --m-panel-2:    rgba(14, 28, 20, 0.92);
    --m-line:       rgba(61, 220, 132, 0.16);
    --m-line-gold:  rgba(217, 183, 106, 0.35);
    --m-text:       #e4ede6;
    --m-muted:      #8ea596;
    --m-radius:     12px;
}

/* ---- Base ---- */
body {
    background:
        radial-gradient(1100px 520px at 50% 0%, rgba(61,220,132,0.07), transparent 70%),
        linear-gradient(180deg, rgba(5,9,7,0) 55%, rgba(5,9,7,0.9) 100%),
        url('../images/bg-bottom-v2.png?v=2') center bottom / cover no-repeat,
        var(--m-bg) !important;
    font-family: 'Inter', system-ui, -apple-system, 'Segoe UI', sans-serif !important;
    color: var(--m-text) !important;
    font-size: 15px;
    -webkit-font-smoothing: antialiased;
}
body, table, .statistics-table td, .odometer { color: var(--m-text) !important; }

h1,h2,h3,h4,h5,h6,
.panel-title,.page-title h2,
.article-title,.article-title a,
.large-button-title,
.nav-link,.footer-nav .nav-link {
    font-family: 'Cinzel', Georgia, serif !important;
    letter-spacing: 0.06em;
}

a { color: var(--m-jade) !important; transition: color .2s ease; }
a:hover { color: var(--m-jade-hi) !important; }
.text-muted { color: var(--m-muted) !important; }
.highlight, .text-green, .text-highlight { color: var(--m-gold) !important; }

::selection { background: rgba(61,220,132,0.35); color: #fff; }

/* ---- Header video ---- */
header::after {
    background: linear-gradient(90deg, transparent 0%, var(--m-gold) 35%, var(--m-gold-hi) 50%, var(--m-gold) 65%, transparent 100%) !important;
    background-size: 100% 1px !important;
    background-position: bottom !important;
    background-repeat: no-repeat !important;
}

/* ---- Navbar ---- */
.nav-top-center {
    background: linear-gradient(180deg, rgba(5,9,7,0.92), rgba(5,9,7,0.7)) !important;
    border-bottom: 1px solid var(--m-line) !important;
    backdrop-filter: blur(6px);
}
.nav-link {
    color: #cfe0d4 !important;
    text-shadow: none !important;
    font-weight: 700 !important;
    font-size: 13.5px !important;
    letter-spacing: 0.14em !important;
    padding: 0.6rem 1.1rem !important;
    position: relative;
}
.nav-link::after {
    content: '';
    position: absolute; left: 50%; bottom: 4px;
    width: 0; height: 1px;
    background: var(--m-gold);
    transform: translateX(-50%);
    transition: width .25s ease;
}
.nav-link:hover::after { width: 60%; }
.nav-link:hover,
.navbar-nav .nav-link.active,
.navbar-nav .show > .nav-link {
    color: var(--m-gold-hi) !important;
    text-shadow: 0 0 14px rgba(217,183,106,0.35) !important;
}
.navbar-brand { margin: 0 1.5rem !important; }
.navbar-brand img {
    height: 72px !important;
    filter: drop-shadow(0 0 14px rgba(61,220,132,0.35));
    transition: transform .3s ease, filter .3s ease;
}
.navbar-brand img:hover {
    transform: scale(1.04) !important;
    filter: drop-shadow(0 0 22px rgba(61,220,132,0.55));
}
.navbar-toggler { border-color: var(--m-line-gold) !important; }
.navbar-toggler-icon { filter: sepia(1) saturate(3) hue-rotate(5deg) brightness(1.1); }

@media (max-width: 991.98px) {
    .navbar-collapse {
        background: rgba(6,12,9,0.97) !important;
        border-top: 1px solid var(--m-line) !important;
        border-radius: 0 0 var(--m-radius) var(--m-radius);
    }
    .navbar-collapse .nav-item { border-bottom: 1px solid var(--m-line) !important; }
    .nav-link::after { display: none; }
}

/* ---- Pannelli ---- */
.panel-bg, .ranking-panel-bg, .statistics-bg, .main-page, .first-player {
    background: linear-gradient(180deg, var(--m-panel-2), var(--m-panel)) !important;
    border: 1px solid var(--m-line) !important;
    border-radius: var(--m-radius) !important;
    box-shadow: 0 18px 40px rgba(0,0,0,0.45), inset 0 1px 0 rgba(255,255,255,0.03) !important;
    overflow: hidden;
}
.main-page { padding: 1.4rem !important; }
.side-panel { margin-bottom: 1.25rem; }

.panel-title {
    background: linear-gradient(90deg, rgba(61,220,132,0.14), rgba(61,220,132,0.02)) !important;
    color: var(--m-gold-hi) !important;
    border-bottom: 1px solid var(--m-line-gold) !important;
    font-size: 13.5px !important;
    font-weight: 700 !important;
    letter-spacing: 0.12em !important;
    line-height: 48px;
}
.panel-title .subtitle { color: var(--m-jade) !important; font-family: 'Inter', sans-serif !important; font-size: 12px; letter-spacing: .04em; }
.panel-title .subtitle:hover { color: var(--m-jade-hi) !important; }
.panel-subtitle { color: var(--m-jade) !important; }

/* ---- Titoli pagina / articoli ---- */
.page-title { border-bottom: 1px solid var(--m-line-gold) !important; margin-bottom: 1rem; }
.page-title h2 { color: var(--m-gold-hi) !important; font-size: 18px !important; letter-spacing: 0.1em !important; }
.page-title h2 {
    --c: var(--m-gold) !important;
    background-color: rgba(61,220,132,0.08) !important;
    border-radius: 4px;
}
.page-title .page-subtitle { color: var(--m-muted) !important; }

.article-title, .article-title a {
    background: linear-gradient(90deg, rgba(61,220,132,0.16), transparent) !important;
    color: #f2f7f3 !important;
    border-left: 3px solid var(--m-gold) !important;
    border-radius: 6px;
    font-size: 15px !important;
}
.article-body .text, .news-read .text { color: var(--m-text) !important; line-height: 1.7; }

/* ---- Tabelle ---- */
.header-row, thead tr {
    background: rgba(61,220,132,0.08) !important;
    border-bottom: 1px solid var(--m-line-gold) !important;
}
thead tr td, thead tr th, th,
.header-row th, .top10-table th, .top100-table th {
    color: var(--m-gold) !important;
    font-family: 'Cinzel', serif !important;
    font-size: 12px;
    letter-spacing: .08em;
}
tbody tr { border-color: var(--m-line) !important; }
.table-hover > tbody > tr:hover > * { color: #fff !important; background: rgba(61,220,132,0.06) !important; }

/* ---- Paginazione ---- */
.page, .nextpostslink {
    background: var(--m-panel) !important;
    border: 1px solid var(--m-line) !important;
    border-radius: 8px !important;
    color: var(--m-jade) !important;
}
.current, .page:hover, .nextpostslink:hover {
    background: rgba(61,220,132,0.16) !important;
    border-color: var(--m-jade) !important;
    color: #fff !important;
    box-shadow: none !important;
}

/* ---- Form ---- */
.form-control, .input-group-text {
    background: rgba(3,7,5,0.75) !important;
    border: 1px solid var(--m-line) !important;
    color: var(--m-text) !important;
}
.form-control { border-radius: 8px !important; }
.input-group > .input-group-text { border-radius: 8px 0 0 8px !important; color: var(--m-gold) !important; }
.input-group > .form-control { border-radius: 0 8px 8px 0 !important; }
.form-control:focus {
    border-color: var(--m-jade) !important;
    box-shadow: 0 0 0 3px rgba(61,220,132,0.15) !important;
}
::placeholder { color: rgba(142,165,150,0.7) !important; }

/* ---- Bottoni ---- */
.btn-primary, .btn-info, .btn-image {
    background: linear-gradient(180deg, #1fb866, var(--m-jade-deep)) !important;
    border: 1px solid rgba(141,255,185,0.35) !important;
    border-radius: 8px !important;
    color: #04130b !important;
    font-family: 'Cinzel', serif !important;
    font-weight: 700 !important;
    letter-spacing: .1em !important;
    text-shadow: none !important;
    box-shadow: 0 6px 18px rgba(22,154,85,0.25) !important;
    transition: transform .15s ease, box-shadow .2s ease, filter .2s ease !important;
}
.btn-primary:hover, .btn-info:hover, .btn-image:hover {
    filter: brightness(1.1) !important;
    transform: translateY(-1px);
    box-shadow: 0 10px 24px rgba(22,154,85,0.35) !important;
    color: #04130b !important;
}

/* ---- Pulsante grande (Discord) ---- */
.large-button {
    background: linear-gradient(135deg, rgba(61,220,132,0.16), var(--m-panel)) !important;
    border: 1px solid rgba(61,220,132,0.35) !important;
    border-radius: var(--m-radius) !important;
    padding: 28px 18px !important;
    transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease !important;
}
.large-button:hover {
    transform: translateY(-3px);
    border-color: rgba(61,220,132,0.75) !important;
    box-shadow: 0 16px 36px rgba(22,154,85,0.28) !important;
    filter: none !important;
}
.large-button-title { color: var(--m-jade-hi) !important; font-size: 17px !important; letter-spacing: .12em !important; }
.large-button-subtitle { color: var(--m-jade) !important; }

/* ---- Statistiche ---- */
.stat-large {
    background: linear-gradient(180deg, var(--m-panel-2), var(--m-panel)) !important;
    border: 1px solid var(--m-line) !important;
    border-radius: var(--m-radius) !important;
    box-shadow: 0 10px 28px rgba(0,0,0,0.35) !important;
}
.stat-desc {
    color: var(--m-muted) !important;
    font-family: 'Inter', sans-serif !important;
    font-size: 11px !important;
    text-transform: uppercase;
    letter-spacing: .12em;
}
.stat-number, .stat-number .odometer, .odometer {
    color: var(--m-gold-hi) !important;
    font-family: 'Cinzel', serif !important;
    font-weight: 700;
}

/* ---- News ---- */
.news-list li { border-radius: 8px; }
.news-list li:hover, .news-list .news-hovered {
    --c: var(--m-gold) !important;
    background-color: rgba(61,220,132,0.06) !important;
}
.news-content a { color: #f2f7f3 !important; }
.news-badge { color: var(--m-gold) !important; }
.news-date { color: var(--m-muted) !important; }
.news-read .text a, .news-read .copy a { color: var(--m-jade) !important; }
.news-read .text a:hover, .news-read .copy a:hover { color: var(--m-jade-hi) !important; }

/* ---- Liste / menu utente ---- */
.blogroll .list-group-item:not(.active),
.list-group-new .list-group-item {
    background-color: rgba(61,220,132,0.035) !important;
    color: var(--m-text) !important;
    border-color: var(--m-line) !important;
}
.blogroll .list-group-item:hover:not(.active),
.list-group-new .list-group-item:hover { background-color: rgba(61,220,132,0.1) !important; }
.list-group-item.active { background-color: rgba(61,220,132,0.2) !important; border-color: var(--m-jade) !important; }
#mini-icons a { background-color: rgba(61,220,132,0.14) !important; border-radius: 6px; }
#mini-icons .languagewrapper a:hover { background-color: rgba(61,220,132,0.28) !important; }

/* ---- Footer ---- */
.footer {
    background: linear-gradient(180deg, rgba(5,9,7,0.6), #030604) !important;
    border-top: 1px solid var(--m-line) !important;
}
.footer::before { background: linear-gradient(90deg, transparent, var(--m-gold), transparent) !important; }
.footer p { color: var(--m-muted) !important; letter-spacing: .04em; }
.footer-nav .nav-link { color: var(--m-muted) !important; }
.footer-nav .nav-link:hover { color: var(--m-gold) !important; }

/* ---- Scrollbar ---- */
::-webkit-scrollbar { width: 8px; }
::-webkit-scrollbar-track { background: var(--m-bg); }
::-webkit-scrollbar-thumb { background: var(--m-jade-dim); border-radius: 4px; }
::-webkit-scrollbar-thumb:hover { background: var(--m-jade-deep); }

/* ---- Loader ---- */
#page-loader { background: var(--m-bg) !important; }

/* ---- Countdown apertura ---- */
.m2-launch { margin-bottom: 18px; position: relative; z-index: 11; }
.m2-launch-inner {
    display: flex; align-items: center; justify-content: space-between; gap: 24px; flex-wrap: wrap;
    background: linear-gradient(135deg, rgba(61,220,132,0.14), rgba(9,18,13,0.9) 55%);
    border: 1px solid rgba(61,220,132,0.3);
    border-radius: var(--m-radius);
    padding: 22px 28px;
    box-shadow: 0 18px 40px rgba(0,0,0,0.45), inset 0 1px 0 rgba(217,183,106,0.25);
}
.m2-launch-eyebrow {
    display: block; font: 600 11px/1 'Inter', sans-serif; letter-spacing: .3em; text-transform: uppercase;
    color: var(--m-gold); margin-bottom: 10px;
}
.m2-launch-title {
    margin: 0; font-family: 'Cinzel', serif !important; font-weight: 700; color: #f3f8f4;
    font-size: clamp(18px, 2.2vw, 26px); letter-spacing: .06em;
}
.m2-countdown { display: flex; gap: 10px; }
.m2-cd-box {
    min-width: 78px; text-align: center; padding: 12px 10px 10px;
    background: rgba(3,7,5,0.7); border: 1px solid var(--m-line-gold); border-radius: 10px;
}
.m2-cd-num {
    display: block; font: 800 30px/1 'Cinzel', serif; color: var(--m-gold-hi);
    text-shadow: 0 0 18px rgba(217,183,106,0.35); font-variant-numeric: tabular-nums;
}
.m2-cd-lbl { display: block; margin-top: 7px; font: 600 10.5px/1 'Inter', sans-serif; letter-spacing: .18em; text-transform: uppercase; color: var(--m-muted); }
.m2-launch-open { display: none; font: 700 20px/1.3 'Cinzel', serif; color: var(--m-jade-hi); }
.m2-launch.is-open .m2-countdown { display: none; }
.m2-launch.is-open .m2-launch-open { display: block; }
@media (max-width: 767.98px) {
    .m2-launch-inner { justify-content: center; text-align: center; padding: 18px 14px; }
    .m2-countdown { width: 100%; justify-content: center; gap: 8px; }
    .m2-cd-box { min-width: 0; flex: 1; padding: 10px 4px 8px; }
    .m2-cd-num { font-size: 24px; }
}

/* ---- Rifinitura finale ---- */
.navbar-brand img { animation: m2LogoGlow 4s ease-in-out infinite; }
@keyframes m2LogoGlow {
    0%, 100% { filter: drop-shadow(0 0 12px rgba(61,220,132,0.3)); }
    50%      { filter: drop-shadow(0 0 24px rgba(61,220,132,0.6)); }
}
.m2-launch-inner { position: relative; overflow: hidden; }
.m2-launch-inner::after {
    content: ''; position: absolute; top: 0; bottom: 0; width: 40%; left: -60%;
    background: linear-gradient(100deg, transparent, rgba(141,255,185,0.10), transparent);
    transform: skewX(-18deg); animation: m2Sweep 6s ease-in-out infinite 1s; pointer-events: none;
}
@keyframes m2Sweep { 0% { left: -60%; } 60%, 100% { left: 130%; } }
.m2-cd-num.tick { animation: m2Tick .35s ease; }
@keyframes m2Tick { 0% { transform: scale(1.14); color: #fff; } 100% { transform: scale(1); } }
.main-container .side-panel, .main-container .main-page, .main-container .stat-large, .m2-launch {
    animation: m2Rise .7s ease both;
}
.main-container .col-lg-6 .main-page { animation-delay: .08s; }
.main-container .col-lg-3:last-child .side-panel { animation-delay: .16s; }
@keyframes m2Rise { from { opacity: 0; transform: translateY(14px); } to { opacity: 1; transform: none; } }
.panel-bg, .main-page, .stat-large { transition: border-color .3s ease, box-shadow .3s ease; }
.panel-bg:hover, .main-page:hover, .stat-large:hover { border-color: rgba(61,220,132,0.32) !important; }
.news-list li { transition: background-color .25s ease, transform .25s ease; }
.news-list li:hover { transform: translateX(3px); }
@media (prefers-reduced-motion: reduce) {
    .navbar-brand img, .m2-launch-inner::after, .m2-cd-num.tick,
    .main-container .side-panel, .main-container .main-page, .main-container .stat-large, .m2-launch { animation: none !important; }
}
