*{margin:0;padding:0;box-sizing:border-box;font-family:Arial,sans-serif}
body{background:#eef3f8;color:#222}
.container{width:min(1100px,95%);margin:auto}
header{
    width:100%;
    min-height:330px;
    background:linear-gradient(180deg,#2348A8 0%,#2D4DA7 100%);
    text-align:center;
    padding:18px 0 45px;
    position:relative;
}
.logo{
    width:235px;
    display:block;
    margin:0 auto;
}
header h1{

    color:#fff;

    font-size:26px;

    font-weight:700;

    margin-top:10px;

    margin-bottom:18px;

    text-align:center;

}
.header-info{

    display:flex;

    justify-content:center;

    align-items:center;

    gap:18px;

    margin-top:18px;

    flex-wrap:wrap;

}
.header-info div{

    width:220px;

    height:42px;

    background:rgba(255,255,255,.15);

    border-radius:10px;

    display:flex;

    justify-content:center;

    align-items:center;

    color:#fff;

    font-size:16px;

    font-weight:600;

}
.datetime{

    display:flex;

    justify-content:center;

    gap:16px;

    margin-top:18px;

    flex-wrap:wrap;

}

.datetime div{

    width:185px;

    height:42px;

    border-radius:10px;

    background:rgba(255,255,255,.12);

    color:#fff;

    display:flex;

    align-items:center;

    justify-content:center;

    font-size:15px;

    font-weight:600;

}

.next-title{

    color:#fff;

    font-size:18px;

    font-weight:700;

    letter-spacing:2px;

    margin-top:18px;

}
.latest-card,.history{background:#fff;margin:25px 0;padding:20px;border-radius:12px;box-shadow:0 4px 14px rgba(0,0,0,.08)}
.hero-number{font-size:56px;font-weight:bold;color:#0b4ea2;text-align:center}
.hero-detail{display:flex;justify-content:center;gap:20px;flex-wrap:wrap;margin-top:10px}
.search-box{

    position:relative;

    margin:18px 0 25px;

}

.search-box input{

    width:100%;

    height:50px;

    border:2px solid #D8E3F5;

    border-radius:12px;

    padding:0 18px 0 50px;

    font-size:16px;

    color:#333;

    background:#fff;

    transition:.3s;

}

.search-box input:focus{

    border-color:#2348A8;

    box-shadow:0 0 10px rgba(35,72,168,.15);

}

.search-icon{

    position:absolute;

    left:18px;

    top:50%;

    transform:translateY(-50%);

    font-size:18px;

    color:#7C90BE;

}
table{

    width:100%;

    border-collapse:collapse;

    overflow:hidden;

    border-radius:12px;

}

th{

    background:#27449B;

    color:#fff;

    padding:16px 20px;

    font-size:17px;

    font-weight:700;

    text-align:center;

}

thead th:first-child{

    border-radius:10px 0 0 10px;

}

thead th:last-child{

    border-radius:0 10px 10px 0;

}

td{

    padding:18px 15px;

    border-bottom:1px solid #E8EDF5;

    text-align:center;

    font-size:17px;

}

tbody tr{

    transition:.25s;

}

tbody tr:hover{

    background:#F4F8FF;

}

.pagination{

    display:flex;

    justify-content:center;

    align-items:center;

    gap:15px;

    margin-top:28px;

}

.pagination button{

    background:#BDBDBD;

    color:#fff;

    border:none;

    border-radius:8px;

    padding:12px 24px;

    font-size:16px;

    font-weight:600;

    cursor:pointer;

    transition:.3s;

}

.pagination button:hover{

    background:#27449B;

}

.pagination span{

    color:#173F9B;

    font-size:18px;

    font-weight:700;

}

.toast{position:fixed;right:20px;bottom:20px;background:#0b4ea2;color:#fff;padding:15px;border-radius:8px;display:none}
.toast.show{display:block}
.new-result{animation:flash .8s}
@keyframes flash{50%{transform:scale(1.03)}}
header p{

    color:#fff;

    font-size:26px;

    font-weight:700;

    margin-top:12px;

    margin-bottom:18px;

    text-align:center;

}
.countdown-box{

    width:340px;

    height:72px;

    margin:16px auto 0;

    background:#FFC61A;

    border-radius:16px;

    display:flex;

    justify-content:center;

    align-items:center;

    box-shadow:0 10px 25px rgba(0,0,0,.25);

}

.countdown-box #countdown{

    font-size:38px;

    font-weight:700;

    color:#153D9C;

    letter-spacing:0px;

    word-spacing:0px;

    font-family:Arial,sans-serif;

}
/* ==========================
   LATEST RESULT CARD
========================== */

.latest-card{

    background:#fff;

    border-radius:18px;

    padding:35px;

    box-shadow:0 10px 30px rgba(0,0,0,.10);

}

.latest-card h2{

    color:#173F9B;

    text-align:center;

    font-size:22px;

    margin-bottom:20px;

}

.hero-number{

    text-align:center;

    font-size:64px;

    font-weight:700;

    color:#E61E4D;

    margin-bottom:28px;

}

.hero-detail{

    display:flex;

    justify-content:center;

    gap:18px;

    flex-wrap:wrap;

}

.detail-box{

    width:245px;

    background:#F4F7FD;

    border:1px solid #E2E8F5;

    border-radius:12px;

    padding:18px;

    text-align:center;

}

.detail-title{

    color:#666;

    font-size:18px;

    margin-bottom:8px;

    font-weight:600;

}

.detail-value{

    color:#163F99;

    font-size:18px;

    font-weight:700;

}
/* ==========================================
   FOOTER FINAL
========================================== */

.footer{

    margin-top:80px;

    background:linear-gradient(180deg,#2348A8,#1A3C90);

    color:#fff;

    text-align:center;

    padding:60px 20px 45px;

}

.footer-logo{

    width:220px;

    display:block;

    margin:0 auto 20px;

}

.footer h3{

    font-size:36px;

    font-weight:700;

    margin-bottom:12px;

}

.footer-subtitle{

    font-size:20px;

    color:#ffffff;

    margin-bottom:8px;

}

.footer-desc{

    color:#DCE8FF;

    font-size:16px;

    margin-bottom:35px;

}

.footer-links{

    display:flex;

    justify-content:center;

    flex-wrap:wrap;

    gap:42px;

    margin:38px 0;

}

.footer-links a{

    color:#fff;

    text-decoration:none;

    font-size:16px;

    font-weight:600;

    transition:.30s;

}

.footer-links a:hover{

    color:#FFD447;

    transform:translateY(-2px);

}

.footer-line{

    width:320px;

    height:1px;

    background:rgba(255,255,255,.30);

    margin:0 auto 25px;

}

.footer-copy{

    font-size:16px;

    font-weight:700;

    margin-bottom:5px;

}

.footer-copy2{

    color:#DCE8FF;

    font-size:15px;

}

/* ==========================
   404 PAGE
========================== */

.back-home{

    display:inline-block;

    margin-top:20px;

    padding:14px 28px;

    background:#2348A8;

    color:#fff;

    text-decoration:none;

    border-radius:10px;

    font-weight:700;

    transition:.30s;

}

.back-home:hover{

    background:#FFC61A;

    color:#173F9B;

    transform:translateY(-3px);

}