/*
Theme Name: JU88 Casa
Description: Vietnamese editorial layout for JU88 Games.
Version: 1.0.0
*/
html{scroll-behavior:smooth}body{overflow-wrap:break-word}img{height:auto}button,a{touch-action:manipulation}
html{scroll-padding-top:var(--jv-header-clearance,0px)}
#header{z-index:1000}
#header.jv-header-fixed>.header-wrapper{position:fixed;top:var(--jv-header-top,0px);left:var(--jv-header-left,0px);width:var(--jv-header-width,100%);box-shadow:0 3px 12px #0003;animation:jv-header-slide-in .55s ease-out both}
@keyframes jv-header-slide-in{from{transform:translateY(-110%)}to{transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){#header.jv-header-fixed>.header-wrapper{animation:none}}
[hidden]{display:none!important}.header-button-1 .button,.header-button-2 .button,.mobile-nav .button{border-radius:99px}
.jv-brand{display:flex;align-items:center;gap:5px;color:#e5b24b!important;text-decoration:none;white-space:nowrap}
.jv-brand strong{font-size:42px;font-style:italic;line-height:1.25;letter-spacing:-2px;color:#f0be52;text-shadow:0 1px 0 #74561d}
.jv-brand span{font-size:12px;font-weight:700;letter-spacing:.3px}.custom-logo-link{display:block}.custom-logo{max-width:176px;max-height:70px;width:auto}
.jv-hero,.jv-featured{padding-top:0;padding-bottom:0}.jv-hero img{display:block;width:100%}.jv-rank{position:absolute;top:8px;left:8px;color:#777;font-size:12px;font-weight:700}
.jv-featured .section{padding-bottom:0}
.jv-brand-wordmark{display:flex;align-items:center;justify-content:center;min-height:110px;font-size:30px;font-weight:800;color:#33466c;overflow-wrap:anywhere}
.jv-brand-card .jv-brand-more{display:block;width:100%;margin:0;border:0;border-radius:40px;padding:18px 12px;background:#2400f5;color:#fff;font-size:24px;line-height:1.4;text-transform:none;letter-spacing:0;cursor:pointer}
.jv-brand-detail{grid-column:1/-1;width:100%;border-top:1px solid #ddd;padding-top:18px;color:#555;line-height:1.8}
.jv-brand-card .casino-logo{width:170px;max-width:100%;min-height:100px;padding:14px 10px;background:#202c44;border-radius:8px;display:flex;align-items:center;justify-content:center}
.jv-brand-card .casino-logo img{width:100%;max-height:85px;height:auto;aspect-ratio:auto;object-fit:contain}
.jv-brand-card .casino-logo .jv-brand-wordmark{color:#f0be52}
.jv-brand-card .casino-logo.jv-logo-light{background:#f4f5f7;box-shadow:inset 0 0 0 1px #e1e4e8}
.jv-brand-card .casino-logo.jv-logo-light .jv-brand-wordmark{color:#24344f}
.jv-brand-card .casino-logo.jv-logo-dark{background:#202c44}
@media(max-width:549px){.jv-brand-card .casino-buttons{width:100%}.jv-brand-card .jv-brand-more{font-size:17px;padding:12px}.jv-brand-wordmark{min-height:80px;font-size:26px}}
.casino-logo img{aspect-ratio:1;object-fit:contain}.casino-info h3{line-height:1.3}.casino-buttons .disabled{opacity:.5}
.jv-submenu-toggle{margin:0;padding:0 5px;min-height:0;line-height:1;border:0;color:inherit;box-shadow:none;font-size:16px;background:none}
.nav-dark .jv-submenu-toggle{color:#ddd}.nav .has-dropdown{display:flex;align-items:center}.has-dropdown:hover>.nav-dropdown,.has-dropdown:focus-within>.nav-dropdown,.has-dropdown.open>.nav-dropdown{left:0;opacity:1;visibility:visible;pointer-events:auto}
.jv-menu-toggle{color:#fff;border:0;padding:0;margin:0;font-size:25px;line-height:1;min-height:40px;background:none;box-shadow:none}
.jv-menu-backdrop{position:fixed;inset:0;background:#0009;z-index:1001}
.jv-mobile-menu{position:fixed;left:0;top:0;bottom:0;width:300px;max-width:85vw;overflow-y:auto;background:#fff;z-index:1002;padding:60px 0 24px;box-shadow:0 0 25px #0004}
.jv-menu-close{position:absolute;right:12px;top:4px;border:0;font-size:32px;margin:0;background:none}
.jv-mobile-menu .nav>li>a{color:#555!important;padding:15px 20px}.jv-mobile-menu .nav>li{border-top:1px solid #ececec}
.jv-mobile-menu .has-dropdown{display:flex;flex-wrap:wrap}.jv-mobile-menu .has-dropdown>a{flex:1}.jv-mobile-menu .jv-submenu-toggle{margin-right:16px;padding:10px;color:#555}
.jv-mobile-menu .nav-dropdown{position:static;width:100%;min-width:0;display:none;opacity:1;visibility:visible;transform:none;border:0;box-shadow:none;padding:0 20px 15px;background:#f6f6f6}
.jv-mobile-menu .has-dropdown.open>.nav-dropdown{display:block}.jv-mobile-menu .nav-dropdown:before,.jv-mobile-menu .nav-dropdown:after{display:none}
.jv-mobile-menu .nav-dropdown a{color:#555;padding:12px 8px}.jv-mobile-actions{padding:20px}
body.jv-menu-open{overflow:hidden}.jv-cta{margin:22px 0}.jv-cta .button{border-radius:99px}.jv-toc-toggle{font-size:18px;padding:0 5px;margin:0 0 0 8px;min-height:0;line-height:1;border:0;box-shadow:none;color:#446084}
#toc_container{max-width:100%;width:fit-content}#toc_container .toc_list .depth-3{margin-left:1.5em}#toc_container .toc_list li{list-style:none}#toc_container a{color:#dd9933}#toc_container a:hover{color:#111}
.jv-page-copy p,.entry-content p{text-align:justify}.jv-page-copy figure,.entry-content figure{margin:22px auto;max-width:100%;text-align:center}.jv-page-copy figure img,.entry-content figure img{display:block;max-width:100%;margin:auto}
figcaption{background:#f2f2f2;color:#555;padding:8px;font-size:14px;text-align:center}
.jv-table{max-width:100%;overflow:auto;margin:20px 0}table{margin:0;min-width:460px}th{text-transform:none;letter-spacing:0}td,th{padding:10px;text-align:left;border:1px solid #c5c2c0}
.cd table{font-size:15px}.cd:focus-visible{outline:2px solid #446084;outline-offset:3px}.entry-content h2,.entry-content h3,.jv-page-copy h2,.jv-page-copy h3{scroll-margin-top:30px}
.post-sidebar .widget ul li{padding:8px 0}.post-sidebar .widget a{color:#dd9933}.post-title.is-large{font-size:20px}
.jv-footer{background:#5a5a5a;padding:30px 0;color:#000}.jv-footer p,.jv-footer ul{color:#000}.jv-footer .section-title-main{font-size:103%;color:#dc9a26}
.jv-footer-brand{width:50%;margin-bottom:15px}.jv-footer-brand .jv-brand strong{font-size:62px}.jv-footer-brand .jv-brand span{font-size:16px}
.jv-footer-links{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:20px 0}
#top-link{font-size:23px;line-height:34px;text-align:center;color:#555;background:#fff9}
@media(max-width:849px){.medium-logo-center #logo{margin:0 15px}.jv-brand{justify-content:center}.jv-brand strong{font-size:40px}.jv-footer-brand{width:auto}.jv-footer-brand .jv-brand{justify-content:flex-start}.header-bottom .button{margin-bottom:0;margin-top:0}.row-divided>.col+.col:not(.large-12){border-left:0}}
@media(max-width:549px){.jv-brand span{font-size:10px}.casino-buttons a{font-size:18px;line-height:1.6}.cd{height:900px}.jv-table{font-size:14px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.cd{animation:none}.button,a{transition:none!important}}
/* Keep the nested home layout within the mobile viewport. */
@media(max-width:849px){
 .home #content.page-wrapper{padding:16px 12px 28px}
 .home #content>.row-main{width:100%;margin:0}
 .home #content>.row-main>.col{padding:0;min-width:0}
 .home .jv-hero .row,.home .jv-featured .row{width:100%;max-width:100%;margin:0}
 .home .jv-hero .col,.home .jv-featured .col:not(.cd){padding:0;min-width:0}
 .home .jv-hero{padding-left:0;padding-right:0}
 .home .jv-hero .img{margin:0}
 .home .jv-featured,.home .jv-featured .section{padding:0}
 .jv-brand-card.casino-card{display:grid;grid-template-columns:minmax(0,1fr);justify-items:center;gap:16px;width:100%;max-width:100%;padding:24px 16px 18px;margin:16px 0}
 .jv-brand-card .casino-logo{width:150px;min-height:84px;margin:0}
 .jv-brand-card .casino-logo img{max-width:100%;max-height:64px}
 .jv-brand-card .jv-brand-wordmark{min-height:56px;font-size:26px}
 .jv-brand-card .casino-info{width:100%;min-width:0;margin:0;font-size:16px;line-height:1.6}
 .jv-brand-card .casino-info h3{font-size:25px;margin:0 0 8px}
 .jv-brand-card .casino-buttons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;min-width:0;gap:10px;margin:0}
 .jv-brand-card .casino-buttons>a,.jv-brand-card .casino-buttons>.jv-brand-more{display:flex;align-items:center;justify-content:center;width:100%;min-width:0;min-height:46px;margin:0;padding:10px 8px;border:0;border-radius:24px;font-size:16px;font-weight:700;line-height:1.4;white-space:normal}
 .jv-brand-card .casino-buttons>:only-child{grid-column:1/-1}
 .jv-brand-card .casino-buttons:empty{display:none}
 .jv-brand-card .jv-brand-detail{min-width:0;font-size:15px;text-align:left}
}

/* Anchor desktop submenus below their own navigation item. */
#wide-nav .header-bottom-nav>.has-dropdown{position:relative}
#wide-nav .header-bottom-nav>.has-dropdown>.nav-dropdown{top:100%;bottom:auto;left:0;display:block;max-height:calc(100vh - var(--jv-header-clearance,160px));overflow-y:auto;transform:none;pointer-events:none;box-shadow:0 5px 16px #0003}
#wide-nav .header-bottom-nav>.has-dropdown:hover>.nav-dropdown,
#wide-nav .header-bottom-nav>.has-dropdown:focus-within>.nav-dropdown,
#wide-nav .header-bottom-nav>.has-dropdown.open>.nav-dropdown{pointer-events:auto}
/* Give the header account actions consistent breathing room. */
#header .header-nav-main{gap:24px}
#header .header-nav-main>.header-button-1,#header .header-nav-main>.header-button-2{margin:0}
#header .header-button-1>.button,#header .header-button-2>.button,#header .mobile-nav>li>.button{display:inline-flex;align-items:center;justify-content:center;min-width:120px;min-height:44px;margin:0;padding:10px 22px;border-radius:999px;font-size:14px;line-height:1.4;white-space:nowrap}
@media(max-width:849px){
 #header .mobile-nav{gap:14px;padding:8px 0}
 #header .mobile-nav>li{margin:0}
 #header .mobile-nav>li>.button{min-width:112px;padding:10px 18px;font-size:13px}
}

/* JU88 brand directory: restrained navy and gold. */
.jv-brand-card.casino-card{grid-template-columns:140px minmax(0,1fr) 190px;gap:28px;border:1px solid #dce1e7;border-left:4px solid #d4a43d;border-radius:16px;padding:28px 28px 28px 42px;margin:18px 0;background:#fff;box-shadow:0 5px 18px #202c4409;text-align:left}
.jv-brand-card .jv-rank{top:9px;left:12px;font-size:11px;line-height:18px;color:#7b6845;font-variant-numeric:tabular-nums}
.jv-brand-card .casino-logo{width:140px;min-height:88px;border-radius:12px;margin:0}
.jv-brand-card .casino-logo img{max-height:64px}
.jv-brand-card .casino-info{min-width:0;text-align:left;color:#627084;font-size:16px;line-height:1.7}
.jv-brand-card .casino-info h3{font-size:26px;line-height:1.3;color:#202c44;margin:0 0 8px;font-weight:700}
.jv-brand-card .casino-buttons{display:flex;flex-direction:column;gap:10px;width:100%;min-width:0;margin:0}
.jv-brand-card .casino-buttons>a,.jv-brand-card .casino-buttons>.jv-brand-more{display:flex;align-items:center;justify-content:center;width:100%;min-height:46px;margin:0;padding:11px 16px;border:1px solid #d6dde6;border-radius:8px;background:#fff;color:#24344f;font-size:15px;font-weight:700;line-height:1.4;letter-spacing:0;box-shadow:none;white-space:normal;text-transform:none;transition:background-color .2s,border-color .2s}
.jv-brand-card .casino-buttons>.btn-register{background:#f0be52;border-color:#f0be52;color:#202c44}
.jv-brand-card .casino-buttons>.btn-register:hover{background:#e5ad38;border-color:#e5ad38;opacity:1}
.jv-brand-card .casino-buttons>.jv-brand-more:hover,.jv-brand-card .casino-buttons>.jv-brand-more[aria-expanded=true]{background:#edf1f6;border-color:#aab7c8;opacity:1}
.jv-brand-card .casino-buttons>:focus-visible{outline:3px solid #8b671d;outline-offset:3px}
.jv-brand-card .jv-brand-detail{padding-top:20px;border-color:#e5e9ef;color:#526074;font-size:16px;line-height:1.8;text-align:left}
@media(max-width:849px){
 .jv-brand-card.casino-card{grid-template-columns:110px minmax(0,1fr);justify-items:stretch;gap:18px;padding:28px 20px 20px;margin:16px 0}
 .jv-brand-card .casino-logo{width:110px;min-height:78px;padding:12px 8px}
 .jv-brand-card .casino-logo img{max-height:56px}
 .jv-brand-card .casino-info h3{font-size:22px}
 .jv-brand-card .casino-buttons{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
 .jv-brand-card .casino-buttons>:only-child{grid-column:1/-1}
 .jv-brand-card .casino-buttons:empty{display:none}
}
@media(max-width:399px){
 .jv-brand-card.casino-card{grid-template-columns:88px minmax(0,1fr);gap:14px;padding:28px 14px 16px}
 .jv-brand-card .casino-logo{width:88px;min-height:70px}
 .jv-brand-card .casino-info{font-size:14px}
 .jv-brand-card .casino-info h3{font-size:20px}
 .jv-brand-card .casino-buttons>a,.jv-brand-card .casino-buttons>.jv-brand-more{padding:11px 8px;font-size:14px}
}
