
/* ================================================
   AMERIA - TEAL/AQUA THEME
   ================================================ */
@import url('https://fonts.googleapis.com/css2?family=Rajdhani:wght@400;500;600;700&family=Exo+2:wght@300;400;600&display=swap');

:root {
    --teal:        #00c8a8;
    --teal-dark:   #007a68;
    --teal-dim:    #00473d;
    --teal-glow:   #00ffcc;
    --teal-border: #0d5c4a;
    --bg-dark:     #04090f;
    --bg-panel:    #071318;
    --bg-panel2:   #0a1c24;
    --text-light:  #c8f0e8;
    --text-muted:  #5a9a8a;
}

body {
    background: url('../images/bg-bottom-v2.png?v=2') center bottom no-repeat, #04090f !important;
    background-size: cover !important;
    font-family: 'Exo 2', 'Open Sans', sans-serif !important;
    color: #c8f0e8 !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: 'Rajdhani', sans-serif !important;
    letter-spacing: 1px;
}

a { color: #00c8a8 !important; }
a:hover { color: #00ffcc !important; }
body, table, .statistics-table td, .odometer { color: #c8f0e8 !important; }
.text-muted { color: #5a9a8a !important; }
.highlight, .text-green, .text-highlight { color: #00c8a8 !important; }

/* ---- Navbar ---- */
.nav-link {
    color: #a0e0d0 !important;
    text-shadow: 0 0 8px rgba(0,200,168,0.4) !important;
    font-family: 'Rajdhani', sans-serif !important;
    font-weight: 600 !important;
    font-size: 14px !important;
    letter-spacing: 1.5px !important;
    text-transform: uppercase !important;
}
.nav-link:hover,
.navbar-nav .nav-link.active,
.navbar-nav .show > .nav-link {
    color: #00ffcc !important;
    text-shadow: 0 0 12px rgba(0,255,204,0.7) !important;
}
.navbar-toggler { border-color: #0d5c4a !important; }
.navbar-toggler-icon { filter: invert(70%) sepia(60%) saturate(400%) hue-rotate(130deg); }

/* ---- Menu mobile - SINISTRA ---- */
@media (max-width: 991.98px) {
    .navbar-collapse {
        background: rgba(4,14,20,0.97) !important;
        border-top: 1px solid #0d5c4a;
        padding: 10px 0;
    }
    .navbar-collapse .navbar-nav {
        align-items: flex-start !important;
        justify-content: flex-start !important;
        flex: unset !important;
        width: 100% !important;
        margin: 0 !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }
    #navbarToggler2.show .navbar-nav,
    #navbarToggler3.show .navbar-nav {
        align-items: flex-start !important;
        margin: 0 !important;
    }
    .navbar-collapse .nav-item {
        width: 100%;
        border-bottom: 1px solid rgba(0,200,168,0.1);
    }
    .navbar-collapse .nav-link { padding-left: 20px !important; }
    .navbar-collapse .navbar-brand { display: none !important; }
}

/* ---- Panel & card ---- */
.panel-bg {
    background-image: none !important;
    background-color: #071318 !important;
    border: 1px solid #0d5c4a !important;
    box-shadow: 0 0 20px rgba(0,200,168,0.08) !important;
}
.ranking-panel-bg {
    background-image: none !important;
    background-color: #071318 !important;
    border: 1px solid #0d5c4a !important;
}
.statistics-bg {
    background-image: none !important;
    background-color: #0a1c24 !important;
    border: 1px solid #0d5c4a !important;
}

/* ---- Panel title ---- */
.panel-title {
    background-image: none !important;
    background-color: #00473d !important;
    color: #00ffcc !important;
    border-bottom: 1px solid #0d5c4a !important;
    text-transform: uppercase;
    font-size: 14px !important;
    font-weight: 700 !important;
    line-height: 46px;
}
.panel-title .subtitle { color: #00c8a8 !important; }
.panel-title .subtitle:hover { color: #00ffcc !important; }

/* ---- Page title ---- */
.page-title { border-bottom: 1px solid #0d5c4a !important; }
.page-title h2 {
    color: #00ffcc !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    text-transform: uppercase;
}
.page-title .page-subtitle { color: #5a9a8a !important; }

/* ---- Article title ---- */
.article-title, .article-title a {
    background-image: none !important;
    background-color: #00473d !important;
    color: #e8fff8 !important;
    border-left: 3px solid #00c8a8 !important;
    padding-left: 15px !important;
    font-size: 15px !important;
    font-weight: 700 !important;
}
.article-body .text { color: #c8f0e8 !important; }

/* ---- Tabelle ---- */
.header-row, thead tr {
    background-image: none !important;
    background-color: #00473d !important;
    border-bottom: 2px solid #00c8a8 !important;
}
thead tr td, thead tr th, th,
.header-row th, .top10-table th, .top100-table th { color: #00ffcc !important; }
.table-hover > tbody > tr:hover > * { color: #fff !important; }

/* ---- Paginazione ---- */
.page, .nextpostslink {
    background: #071318 !important;
    border: 1px solid #0d5c4a !important;
    color: #00c8a8 !important;
}
.current, .page:hover, .nextpostslink:hover {
    background: #00473d !important;
    border: 1px solid #00c8a8 !important;
    color: #fff !important;
    box-shadow: 0 0 8px rgba(0,200,168,0.3) !important;
}

/* ---- Form inputs ---- */
.form-control {
    background: #040d14 !important;
    border: none !important;
    border-bottom: 1px solid #0d5c4a !important;
    border-right: 1px solid #0d5c4a !important;
    border-radius: 2px !important;
    color: #d0f0e8 !important;
}
.form-control:not(.input-group .form-control) { border-left: 1px solid #0d5c4a !important; }
.form-control:focus {
    background: #040d14 !important;
    border-bottom: 1px solid #00c8a8 !important;
    color: #e8fff8 !important;
    box-shadow: 0 0 0 0.15rem rgba(0,200,168,0.2) !important;
}
.input-group-text {
    background-color: #040d14 !important;
    border-color: #040d14 !important;
    border-bottom: 1px solid #0d5c4a !important;
    border-left: 1px solid #0d5c4a !important;
    color: #00c8a8 !important;
}
::placeholder { color: rgba(0,200,168,0.4) !important; opacity: 1 !important; }

/* ---- Bottoni ---- */
.btn-primary, .btn-info {
    background: #00473d !important;
    border: 1px solid #0d5c4a !important;
    border-radius: 2px !important;
    color: #e8fff8 !important;
    font-family: 'Rajdhani', sans-serif !important;
    font-weight: 600 !important;
    letter-spacing: 1px !important;
    text-transform: uppercase !important;
}
.btn-primary:hover, .btn-info:hover {
    background: #007a68 !important;
    border-color: #00c8a8 !important;
    box-shadow: 0 0 10px rgba(0,200,168,0.3) !important;
}
.btn-image {
    background-image: none !important;
    background-color: #00473d !important;
    border: 1px solid #0d5c4a !important;
    color: #e8fff8 !important;
    font-family: 'Rajdhani', sans-serif !important;
    font-weight: 600 !important;
    letter-spacing: 1px !important;
    text-transform: uppercase !important;
    border-radius: 2px !important;
    width: auto !important;
    height: auto !important;
    padding: 8px 20px !important;
    line-height: normal !important;
}
.btn-image:hover {
    background-color: #007a68 !important;
    border-color: #00c8a8 !important;
    filter: none !important;
    box-shadow: 0 0 10px rgba(0,200,168,0.3) !important;
}

/* ---- Large buttons ---- */
.large-button {
    background-image: none !important;
    background-color: #071318 !important;
    border: 1px solid #0d5c4a !important;
    transition: all 0.3s ease !important;
    padding: 30px 15px !important;
}
.large-button:hover {
    background-color: #00473d !important;
    border-color: #00c8a8 !important;
    filter: none !important;
    box-shadow: 0 0 15px rgba(0,200,168,0.2) !important;
}
.large-button-title {
    color: #00ffcc !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    text-transform: uppercase;
    letter-spacing: 2px;
}
.large-button-subtitle { color: #5a9a8a !important; }

/* ---- Header separator ---- */
header::after {
    background:
        linear-gradient(90deg, rgba(0,0,0,0) 0%, #00c8a8 30%, #00c8a8 50%, #00c8a8 70%, rgba(0,0,0,0) 100%),
        linear-gradient(90deg, rgba(0,0,0,0) 0%, rgba(255,255,255,0.8) 30%, rgba(255,255,255,0.8) 50%, rgba(255,255,255,0.8) 70%, rgba(0,0,0,0) 100%),
        linear-gradient(90deg, rgba(0,0,0,0) 0%, #007a68 30%, #007a68 50%, #007a68 70%, rgba(0,0,0,0) 100%) !important;
    background-position: bottom, bottom, bottom !important;
    background-size: 100% 1px, 100% 2px, 100% 3px !important;
    background-repeat: no-repeat !important;
}

/* ---- Stat box ---- */
.stat-large {
    background-image: none !important;
    background-color: #071318 !important;
    border: 1px solid #0d5c4a !important;
    box-shadow: 0 0 15px rgba(0,200,168,0.1) !important;
    width: auto !important;
    height: auto !important;
    padding: 20px !important;
}
.stat-desc { color: #5a9a8a !important; font-family: 'Exo 2', sans-serif !important; }
.stat-number, .stat-number .odometer, .odometer { color: #00ffcc !important; }

/* ---- News list ---- */
.news-list li:hover, .news-list .news-hovered {
    --c: #00c8a8 !important;
    background-color: rgba(0,200,168,0.05) !important;
}
.news-content a { color: #e8fff8 !important; }
.news-badge { color: #00c8a8 !important; }
.news-date { color: #5a9a8a !important; }
.news-read .text { color: #c8f0e8 !important; }

/* ---- Blogroll ---- */
.blogroll .list-group-item:not(.active) {
    background-color: rgba(0,200,168,0.04) !important;
    color: #c8f0e8 !important;
    border-color: #0d5c4a !important;
}
.blogroll .list-group-item:hover:not(.active) { background-color: rgba(0,200,168,0.1) !important; }
.list-group-item.active { background-color: #00473d !important; border-color: #0d5c4a !important; }

/* ---- Mini icons ---- */
#mini-icons a { background-color: #00473d !important; }
#mini-icons .languagewrapper a:hover { background-color: #007a68 !important; }
.panel-subtitle { color: #00c8a8 !important; }

/* ---- Empires ---- */
.empire-1 { color: #ff7070 !important; }
.empire-2 { color: #ffcc70 !important; }
.empire-3 { color: #70b8ff !important; }

/* ---- First player ---- */
.first-player {
    background-image: none !important;
    background-color: #0a1c24 !important;
    border: 1px solid #0d5c4a !important;
}

/* ---- Footer ---- */
.footer {
    background-image: none !important;
    background-color: #030810 !important;
    border-top: 1px solid #0d5c4a !important;
}
.footer::before {
    background-image: none !important;
    height: 1px !important;
    background: linear-gradient(90deg, transparent, #00c8a8, transparent) !important;
    margin-bottom: 20px !important;
}
.footer-nav .nav-link { color: #5a9a8a !important; }
.footer-nav .nav-link:hover { color: #00c8a8 !important; }

/* ---- Scrollbar ---- */
::-webkit-scrollbar { width: 6px; }
::-webkit-scrollbar-track { background: #04090f; }
::-webkit-scrollbar-thumb { background: #007a68; border-radius: 3px; }
::-webkit-scrollbar-thumb:hover { background: #00c8a8; }

/* ---- Navbar trasparente ---- */
.navbar {
    background-color: transparent !important;
    background-image: none !important;
}
.nav-top-center {
    background-image: none !important;
    background-color: transparent !important;
}
@media (max-width: 991.98px) {
    .navbar {
        background-color: transparent !important;
    }
}

/* ---- Main page / news background ---- */
.main-page {
    background-image: none !important;
    background-color: #071318 !important;
    border: 1px solid #0d5c4a !important;
}

/* ---- Stat box sopra pannello utente ---- */
.stat-large {
    width: 100% !important;
    height: auto !important;
    padding: 15px 10px !important;
    margin-bottom: 8px !important;
}
.stat-container { display: none !important; }

/* ---- Navbar logo ---- */
.navbar-logo {
    height: 55px !important;
    width: auto !important;
    max-width: none !important;
    object-fit: contain !important;
}
.navbar-brand img {
    position: relative !important;
    left: auto !important;
    transform: none !important;
    height: 55px !important;
    width: auto !important;
    object-fit: contain !important;
}

/* ---- Mobile footer spacing ---- */
@media (max-width: 991.98px) {
    .row.my-5 { margin-top: 0.5rem !important; margin-bottom: 0.5rem !important; }
    .footer.mt-5 { margin-top: 0 !important; }
    .d-block.d-lg-none.text-center { padding-top: 1rem !important; padding-bottom: 1rem !important; }
}

/* ---- Links inside news content ---- */
.news-read .text a, .news-read .copy a {
    color: #00ffcc !important;
    text-decoration: underline !important;
    pointer-events: auto !important;
}
.news-read .text a:hover, .news-read .copy a:hover {
    color: #00c8a8 !important;
}

/* ---- Fix z-index colonna centrale ---- */
.col-lg-6.mb-4 {
    position: relative !important;
    z-index: 10 !important;
}
.main-page {
    position: relative !important;
    z-index: 10 !important;
}
