/*
Theme Name: Nha Cai Review
Theme URI: https://example.com
Author: Carl
Description: Theme dùng cho website review / bảng xếp hạng nhà cái (casino, cá cược). Đi kèm tối ưu cho plugin Nha Cai Ranking (shortcode [nha_cai_ranking]).
Version: 1.0.0
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: nha-cai-review
*/

/* ==========================================================
   0. RESET & BASE
   ========================================================== */
*,*::before,*::after{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
    margin:0;
    font-family:'Inter','Montserrat',Arial,sans-serif;
    color:#1b1b1f;
    background:#f2f2f4;
    line-height:1.6;
}
img{max-width:100%;height:auto;display:block;}
a{color:inherit;text-decoration:none;}
ul{list-style:none;margin:0;padding:0;}
.container{max-width:1200px;margin:0 auto;padding:0 20px;}
h1,h2,h3,h4{margin:0 0 12px;font-weight:800;line-height:1.25;}
.btn{
    display:inline-block;padding:12px 26px;border-radius:30px;font-weight:700;
    transition:transform .15s,opacity .15s;
}
.btn:hover{transform:translateY(-2px);opacity:.92;}
.btn-red{background:#e02020;color:#fff;}
.btn-green{background:#28b463;color:#fff;}
.btn-gold{background:linear-gradient(180deg,#ffd76a,#c9971f);color:#3a2a00;}

/* ==========================================================
   1. HEADER
   ========================================================== */
.site-header{
    background:#0e1428;
    color:#fff;
    position:sticky;top:0;z-index:999;
    box-shadow:0 2px 10px rgba(0,0,0,.25);
}
.site-header .container{
    display:flex;align-items:center;justify-content:space-between;
    height:78px;
}
.site-branding{display:flex;align-items:center;gap:10px;}
.site-branding img{max-height:46px;}
.site-title{font-size:22px;font-weight:800;color:#ffd76a;margin:0;}
.site-title a{color:inherit;}

.main-nav ul{display:flex;gap:28px;}
.main-nav a{font-weight:700;font-size:15px;color:#e9e9ef;padding:8px 0;}
.main-nav a:hover{color:#ffd76a;}
.header-cta{flex:0 0 auto;}
.header-cta a{padding:10px 22px;font-size:14px;}

.menu-toggle{display:none;background:none;border:0;color:#fff;font-size:26px;cursor:pointer;}

@media(max-width:900px){
    .main-nav{
        position:absolute;top:78px;left:0;right:0;background:#0e1428;
        flex-direction:column;display:none;padding:10px 20px 20px;
    }
    .main-nav.open{display:flex;}
    .main-nav ul{flex-direction:column;gap:0;}
    .main-nav li{border-bottom:1px solid rgba(255,255,255,.08);}
    .main-nav a{display:block;padding:14px 0;}
    .menu-toggle{display:block;}
}

/* ==========================================================
   2. HERO
   ========================================================== */
.hero{
    background:linear-gradient(135deg,#0e1428 0%,#1c2a55 100%);
    color:#fff;text-align:center;padding:60px 20px 70px;
}
.hero h1{font-size:36px;color:#fff;}
.hero h1 span{color:#ffd76a;}
.hero p{font-size:18px;color:#c7cbe0;max-width:700px;margin:0 auto 26px;}
.hero .btn{font-size:16px;padding:14px 34px;}

/* ==========================================================
   3. RANKING SECTION (works with Nha Cai Ranking plugin output)
   ========================================================== */
.ranking-section{padding:50px 0;}
.ranking-section .ncr-wrapper{background:transparent;padding:0;}
.ranking-section .ncr-title{font-size:30px;}

/* ==========================================================
   4. BLOG / ARTICLE LISTING
   ========================================================== */
.content-area{padding:50px 0;}
.content-layout{display:grid;grid-template-columns:2fr 1fr;gap:40px;}
@media(max-width:900px){.content-layout{grid-template-columns:1fr;}}

.post-card{
    background:#fff;border-radius:12px;overflow:hidden;margin-bottom:26px;
    box-shadow:0 2px 8px rgba(0,0,0,.06);
}
.post-card .post-thumb img{width:100%;height:220px;object-fit:cover;}
.post-card .post-body{padding:20px 22px;}
.post-card .post-meta{font-size:13px;color:#888;margin-bottom:8px;}
.post-card h2{font-size:22px;margin-bottom:8px;}
.post-card h2 a:hover{color:#c9971f;}
.post-card .post-excerpt{color:#444;font-size:15px;}
.read-more{display:inline-block;margin-top:10px;font-weight:700;color:#e02020;}

/* Single post */
.single-post-header{margin-bottom:20px;}
.single-post-header h1{font-size:32px;}
.single-post-header .post-meta{color:#888;font-size:14px;}
.single-content{background:#fff;padding:30px;border-radius:12px;box-shadow:0 2px 8px rgba(0,0,0,.06);}
.single-content img{border-radius:8px;margin:16px 0;}
.single-content h2{font-size:24px;margin-top:28px;}
.single-content h3{font-size:19px;margin-top:20px;}
.single-content p{margin:0 0 16px;}
.single-content table{width:100%;border-collapse:collapse;margin:16px 0;}
.single-content table th,.single-content table td{border:1px solid #e2e2e2;padding:8px 12px;}

/* Sidebar */
.widget-area .widget{
    background:#fff;border-radius:12px;padding:20px;margin-bottom:24px;
    box-shadow:0 2px 8px rgba(0,0,0,.06);
}
.widget-area .widget-title{font-size:17px;border-bottom:2px solid #ffd76a;padding-bottom:8px;margin-bottom:14px;}
.widget-area ul li{padding:8px 0;border-bottom:1px solid #f0f0f0;font-size:14px;}
.widget-area ul li:last-child{border-bottom:none;}

/* Pagination */
.pagination{display:flex;gap:8px;justify-content:center;margin-top:20px;}
.pagination a,.pagination span{
    padding:8px 14px;border-radius:6px;background:#fff;font-weight:700;font-size:14px;
    box-shadow:0 1px 4px rgba(0,0,0,.08);
}
.pagination .current{background:#e02020;color:#fff;}

/* ==========================================================
   5. FOOTER
   ========================================================== */
.site-footer{background:#0e1428;color:#c7cbe0;padding:50px 0 20px;margin-top:40px;}
.footer-columns{display:grid;grid-template-columns:2fr 1fr 1fr;gap:40px;margin-bottom:30px;}
@media(max-width:768px){.footer-columns{grid-template-columns:1fr;}}
.footer-columns h4{color:#fff;font-size:16px;}
.footer-columns ul li{padding:6px 0;}
.footer-columns ul li a:hover{color:#ffd76a;}
.footer-disclaimer{font-size:13px;color:#8b90ad;border-top:1px solid rgba(255,255,255,.08);padding-top:18px;}
.footer-bottom{text-align:center;font-size:13px;color:#8b90ad;padding-top:14px;}
.age-badge{
    display:inline-flex;align-items:center;justify-content:center;
    width:28px;height:28px;border-radius:50%;background:#e02020;color:#fff;
    font-size:12px;font-weight:800;margin-right:6px;
}

/* 404 */
.error-404{text-align:center;padding:90px 20px;}
.error-404 h1{font-size:72px;color:#0e1428;}
