@charset "UTF-8";
/* TG Site Core V10.0.1 Stable */
:root{
  --tg-btn-height:33px;
  --tg-btn-min-width:100px;
  --tg-btn-padding-x:10px;
  --tg-btn-radius:999px;
  --tg-btn-font-size:12px;
  --tg-btn-font-weight:800;
  --tg-auth-gap:10px;
  --tg-auth-margin-y:1px;
  --tg-auth-padding-y:6px;
  --tg-auth-padding-x:10px;
  --tg-float-bottom:10px;
  --tg-login-1:#1e8a58;
  --tg-login-2:#0072ff;
  --tg-register-1:#ff4e50;
  --tg-register-2:#f9d423;
  --tg-login-shadow:0 8px 22px rgba(30,138,88,.28);
  --tg-register-shadow:0 8px 22px rgba(249,212,35,.28);
  --tg-site-text-color:#fff;
  --tg-site-accent-color:#ffd56b;
  --tg-site-button-color:#d6a62e;
  --tg-nav-bg:rgba(20,16,10,.94);
}
.tg-auth-buttons,.tg-auth-buttons *,#tg-mobile-nav,#tg-mobile-nav *{box-sizing:border-box}
.tg-auth-buttons{display:flex;align-items:center;justify-content:center;gap:var(--tg-auth-gap);width:auto;max-width:100%;margin:var(--tg-auth-margin-y) auto;padding:var(--tg-auth-padding-y) var(--tg-auth-padding-x);z-index:2147483646}
.tg-auth-buttons.tg-auth-left{justify-content:flex-start;margin-left:0;margin-right:auto}
.tg-auth-buttons.tg-auth-center{justify-content:center;margin-left:auto;margin-right:auto}
.tg-auth-buttons.tg-auth-right{justify-content:flex-end;margin-left:auto;margin-right:0}
.tg-auth-placeholder{box-sizing:border-box;visibility:hidden;pointer-events:none}
.tg-auth-buttons .tg-auth-btn{display:inline-flex;align-items:center;justify-content:center;min-width:var(--tg-btn-min-width);height:var(--tg-btn-height);padding:0 var(--tg-btn-padding-x);border:0;border-radius:var(--tg-btn-radius);color:#fff;text-decoration:none;text-align:center;line-height:1;white-space:nowrap;font-family:inherit;font-size:var(--tg-btn-font-size);font-weight:var(--tg-btn-font-weight);letter-spacing:.2px;cursor:pointer;background-size:100% 100%;transition:transform .2s ease,opacity .2s ease,box-shadow .2s ease;will-change:transform}
.tg-auth-buttons .tg-login{background-image:linear-gradient(135deg,var(--tg-login-1),var(--tg-login-2));box-shadow:var(--tg-login-shadow)}
.tg-auth-buttons .tg-register{background-image:linear-gradient(135deg,var(--tg-register-1),var(--tg-register-2));box-shadow:var(--tg-register-shadow)}
.tg-auth-buttons .tg-auth-btn:hover,.tg-auth-buttons .tg-auth-btn:focus-visible{color:#fff;text-decoration:none;opacity:.96;transform:translateY(-2px) scale(1.03)}
.tg-auth-buttons .tg-auth-btn:active{transform:translateY(0) scale(.99)}
.tg-auth-buttons.tg-auth-floating{position:fixed;left:50%;bottom:var(--tg-float-bottom);width:auto;margin:0;padding:0;transform:translate(-50%,24px);opacity:0;visibility:hidden;pointer-events:none;background:transparent;border:0;box-shadow:none;transition:transform .25s ease,opacity .25s ease,visibility .25s ease}
.tg-auth-buttons.tg-auth-floating.tg-auth-show{transform:translate(-50%,0);opacity:1;visibility:visible;pointer-events:auto}
#tg-mobile-nav{display:none}
@media (max-width:767px){
  .tg-auth-buttons{gap:12px;margin:10px auto;padding:4px 12px}
  .tg-auth-buttons .tg-auth-btn{min-width:100px;height:30px;padding:0 10px;font-size:14px}
  .tg-auth-buttons.tg-auth-floating{display:none!important}
  #tg-mobile-nav{position:fixed;left:50%;bottom:max(8px,env(safe-area-inset-bottom));z-index:2147483647;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));align-items:stretch;width:calc(100vw - 16px);max-width:560px;height:55px;margin:0!important;padding:0 4px;overflow:visible!important;clip-path:none;border:1px solid transparent;border-radius:15px;background:linear-gradient(var(--tg-nav-bg),var(--tg-nav-bg)) padding-box,linear-gradient(90deg,#14d9ff,#8b5cff 28%,#ff3fd8 52%,#ff8a2b 76%,#ffe25c) border-box;box-shadow:0 8px 24px rgba(0,0,0,.42),0 0 12px rgba(99,76,255,.16),inset 0 1px rgba(255,255,255,.07);transform:translate(-50%,0);opacity:1;visibility:visible;pointer-events:auto;transition:none;contain:layout style}
  #tg-mobile-nav.tg-mobile-nav-show{transform:translate(-50%,0);opacity:1;visibility:visible;pointer-events:auto}
  #tg-mobile-nav .tg-nav-item{position:relative;display:block;min-width:0;height:53px;padding:0 1px;color:var(--tg-site-text-color);text-decoration:none;-webkit-tap-highlight-color:transparent;touch-action:manipulation}
  #tg-mobile-nav .tg-nav-item:hover,#tg-mobile-nav .tg-nav-item:focus-visible,#tg-mobile-nav .tg-nav-home{color:var(--tg-site-accent-color)}
  #tg-mobile-nav .tg-nav-icon{position:absolute;top:5px;left:50%;display:block;width:25px;height:25px;transform:translateX(-50%);fill:currentColor;filter:drop-shadow(0 0 4px currentColor) drop-shadow(0 2px 3px rgba(0,0,0,.3))}
  #tg-mobile-nav .tg-nav-label{position:absolute;right:0;bottom:4px;left:0;display:block;height:13px;min-height:13px;overflow:hidden;color:#fff;font-size:11.5px;font-weight:700;line-height:13px;text-align:center;white-space:nowrap;text-overflow:ellipsis;text-shadow:0 1px 3px rgba(0,0,0,.75)}
  #tg-mobile-nav .tg-nav-home{color:#50dcff}
  #tg-mobile-nav .tg-nav-games{color:#c76dff}
  #tg-mobile-nav .tg-nav-register{color:#55d7ff}
  #tg-mobile-nav .tg-nav-login{color:#ff5ca8}
  #tg-mobile-nav .tg-nav-promo{padding:0 1px;color:var(--tg-site-accent-color)}
  #tg-mobile-nav .tg-nav-promo .tg-nav-icon-wrap{position:absolute;top:-9px;left:50%;isolation:isolate;display:flex;align-items:center;justify-content:center;width:45px;height:45px;margin:0;border:0;border-radius:50%;background:conic-gradient(from 0deg,#18d9ff,#775cff 24%,#ff3fd8 49%,#ff7a2f 72%,#ffe45c 88%,#18d9ff);box-shadow:0 4px 10px rgba(0,0,0,.42),0 0 4px rgba(255,255,255,.30),0 0 6px rgba(255,70,210,.26);transform:translateX(-50%);transition:transform .2s ease}
  #tg-mobile-nav .tg-nav-promo .tg-nav-icon-wrap::after{content:"";position:absolute;inset:3px;z-index:-1;border-radius:50%;background:radial-gradient(circle at 35% 28%,rgba(70,48,122,.98),rgba(31,24,63,.98) 48%,rgba(12,12,23,.99))}
  #tg-mobile-nav .tg-nav-promo .tg-nav-icon{position:relative;top:auto;left:auto;z-index:1;width:25px;height:25px;transform:none}
  #tg-mobile-nav .tg-nav-promo .tg-nav-label{z-index:3;color:#ffe86b;text-shadow:0 0 7px rgba(255,209,64,.55)}
  #tg-mobile-nav .tg-nav-promo:hover .tg-nav-icon-wrap,#tg-mobile-nav .tg-nav-promo:focus-visible .tg-nav-icon-wrap{transform:translateX(-50%) scale(1.06)}
}
@media (max-width:360px){
  #tg-mobile-nav{width:calc(100vw - 10px)}
  #tg-mobile-nav .tg-nav-label{font-size:10.5px}
}
@media (prefers-reduced-motion:reduce){
  .tg-auth-buttons .tg-auth-btn,.tg-auth-buttons.tg-auth-floating,#tg-mobile-nav,#tg-mobile-nav .tg-nav-promo .tg-nav-icon-wrap{transition:none}
}

/* TG Site Core V13 Frontend Style Builder overrides */
.tg-auth-buttons{
  gap:var(--tg-auth-gap);
  margin:var(--tg-auth-margin-top) var(--tg-auth-margin-right) var(--tg-auth-margin-bottom) var(--tg-auth-margin-left);
  padding:0;
}
.tg-auth-buttons .tg-auth-btn{
  min-width:var(--tg-btn-min-width);
  height:var(--tg-btn-height);
  padding:var(--tg-btn-padding-top) var(--tg-btn-padding-right) var(--tg-btn-padding-bottom) var(--tg-btn-padding-left);
  border:var(--tg-btn-border-width) solid var(--tg-btn-border-color);
  border-radius:var(--tg-btn-radius);
  font-size:var(--tg-btn-font-size);
  font-weight:var(--tg-btn-font-weight);
  background-image:none;
}
.tg-auth-buttons .tg-login{background:var(--tg-login-bg);color:var(--tg-login-text)}
.tg-auth-buttons .tg-register{background:var(--tg-register-bg);color:var(--tg-register-text)}
.tg-auth-buttons .tg-login:hover,.tg-auth-buttons .tg-login:focus-visible{background:var(--tg-login-hover-bg);color:var(--tg-login-hover-text)}
.tg-auth-buttons .tg-register:hover,.tg-auth-buttons .tg-register:focus-visible{background:var(--tg-register-hover-bg);color:var(--tg-register-hover-text)}
@media (max-width:767px){
  .tg-auth-buttons{gap:var(--tg-auth-gap);margin:var(--tg-auth-margin-top) var(--tg-auth-margin-right) var(--tg-auth-margin-bottom) var(--tg-auth-margin-left);padding:0}
  .tg-auth-buttons .tg-auth-btn{min-width:var(--tg-btn-min-width);height:var(--tg-btn-height);padding:var(--tg-btn-padding-top) var(--tg-btn-padding-right) var(--tg-btn-padding-bottom) var(--tg-btn-padding-left);font-size:var(--tg-btn-font-size)}
  #tg-mobile-nav{
    left:var(--tg-nav-margin-left);
    right:var(--tg-nav-margin-right);
    bottom:max(var(--tg-nav-margin-bottom),env(safe-area-inset-bottom));
    width:auto;
    height:var(--tg-nav-height);
    padding:var(--tg-nav-padding-top) var(--tg-nav-padding-right) var(--tg-nav-padding-bottom) var(--tg-nav-padding-left);
    border-color:var(--tg-nav-border-color);
    border-radius:var(--tg-nav-radius);
    background:var(--tg-nav-bg-solid);
    transform:none;
  }
  #tg-mobile-nav.tg-mobile-nav-show{transform:none}
  #tg-mobile-nav .tg-nav-item{height:calc(var(--tg-nav-height) - var(--tg-nav-padding-top) - var(--tg-nav-padding-bottom));color:var(--tg-nav-icon-color)}
  #tg-mobile-nav .tg-nav-icon{width:var(--tg-nav-icon-size);height:var(--tg-nav-icon-size)}
  #tg-mobile-nav .tg-nav-label{bottom:var(--tg-nav-icon-gap);color:var(--tg-nav-text-color);font-size:var(--tg-nav-font-size)}
  #tg-mobile-nav .tg-nav-home,#tg-mobile-nav .tg-nav-games,#tg-mobile-nav .tg-nav-login,#tg-mobile-nav .tg-nav-register{color:var(--tg-nav-icon-color)}
  #tg-mobile-nav .tg-nav-item:hover,#tg-mobile-nav .tg-nav-item:focus-visible,#tg-mobile-nav .tg-nav-home{color:var(--tg-nav-active-color)}
  #tg-mobile-nav .tg-nav-item:hover .tg-nav-label,#tg-mobile-nav .tg-nav-item:focus-visible .tg-nav-label,#tg-mobile-nav .tg-nav-home .tg-nav-label{color:var(--tg-nav-active-text)}
  #tg-mobile-nav .tg-nav-promo .tg-nav-icon-wrap{background:var(--tg-nav-middle-bg)}
  #tg-mobile-nav .tg-nav-promo .tg-nav-icon{color:var(--tg-nav-middle-icon)}
  #tg-mobile-nav .tg-nav-promo .tg-nav-label{color:var(--tg-nav-middle-text)}
}

/* V14.1 Frontend Style Presets */
@media (max-width:767px){
  #tg-mobile-nav.tg-style-gold-luxury{
    left:0;right:0;bottom:max(0px,env(safe-area-inset-bottom));width:100%;max-width:none;height:72px;padding:4px 8px 2px;border:1px solid var(--tg-nav-border-color);border-left:0;border-right:0;border-bottom:0;border-radius:16px 16px 0 0;background:var(--tg-nav-bg-solid);box-shadow:0 -6px 20px rgba(0,0,0,.28);grid-template-columns:repeat(5,minmax(0,1fr));
  }
  #tg-mobile-nav.tg-style-gold-luxury .tg-nav-item{height:65px;color:var(--tg-nav-icon-color)}
  #tg-mobile-nav.tg-style-gold-luxury .tg-nav-icon{top:6px;width:28px;height:28px;filter:none}
  #tg-mobile-nav.tg-style-gold-luxury .tg-nav-label{bottom:5px;color:var(--tg-nav-text-color);font-size:11px;font-weight:800;text-transform:uppercase;text-shadow:none}
  #tg-mobile-nav.tg-style-gold-luxury .tg-nav-home{color:var(--tg-nav-active-color)}
  #tg-mobile-nav.tg-style-gold-luxury .tg-nav-home .tg-nav-icon{width:34px;height:34px;top:1px;padding:6px;border-radius:50%;background:rgba(214,166,46,.18);filter:drop-shadow(0 0 7px rgba(255,213,107,.38))}
  #tg-mobile-nav.tg-style-gold-luxury .tg-nav-promo .tg-nav-icon-wrap{top:3px;width:34px;height:34px;border-radius:8px;background:transparent;box-shadow:none}
  #tg-mobile-nav.tg-style-gold-luxury .tg-nav-promo .tg-nav-icon-wrap::after{display:none}
  #tg-mobile-nav.tg-style-gold-luxury .tg-nav-promo .tg-nav-label{color:var(--tg-nav-middle-text);text-shadow:none}

  #tg-mobile-nav.tg-style-navy-app{
    left:0;right:0;bottom:max(0px,env(safe-area-inset-bottom));width:100%;max-width:none;height:66px;padding:3px 4px 2px;border:0;border-top:3px solid var(--tg-nav-border-color);border-radius:0;background:var(--tg-nav-bg-solid);box-shadow:0 -5px 18px rgba(0,0,0,.26);grid-template-columns:repeat(5,minmax(0,1fr));
  }
  #tg-mobile-nav.tg-style-navy-app .tg-nav-item{height:59px;color:var(--tg-nav-icon-color)}
  #tg-mobile-nav.tg-style-navy-app .tg-nav-icon{top:4px;width:27px;height:27px;filter:none}
  #tg-mobile-nav.tg-style-navy-app .tg-nav-label{bottom:3px;color:var(--tg-nav-text-color);font-size:11px;font-weight:800;text-shadow:none}
  #tg-mobile-nav.tg-style-navy-app .tg-nav-home{border-radius:0 0 18px 18px;background:rgba(255,213,107,.10);color:var(--tg-nav-active-color)}
  #tg-mobile-nav.tg-style-navy-app .tg-nav-home .tg-nav-label{color:var(--tg-nav-active-text)}
  #tg-mobile-nav.tg-style-navy-app .tg-nav-promo .tg-nav-icon-wrap{top:3px;width:31px;height:31px;border-radius:8px;background:transparent;box-shadow:none}
  #tg-mobile-nav.tg-style-navy-app .tg-nav-promo .tg-nav-icon-wrap::after{display:none}
  #tg-mobile-nav.tg-style-navy-app .tg-nav-promo .tg-nav-label{color:var(--tg-nav-text-color);text-shadow:none}
}
.tg-auth-buttons.tg-style-gold-luxury .tg-auth-btn{border-radius:8px;box-shadow:none}
.tg-auth-buttons.tg-style-navy-app .tg-auth-btn{border-radius:10px;box-shadow:0 4px 12px rgba(0,0,0,.14)}

/* V14.1.1 Glass Dock preset: light floating navigation, deliberately distinct from dark full-width presets. */
@media (max-width:767px){
  #tg-mobile-nav.tg-style-glass-dock{
    left:14px;right:14px;bottom:max(12px,env(safe-area-inset-bottom));width:auto;max-width:none;height:64px;padding:5px 6px;border:1px solid var(--tg-nav-border-color);border-radius:22px;background:rgba(248,251,255,.94);box-shadow:0 12px 34px rgba(15,23,42,.20),inset 0 1px 0 rgba(255,255,255,.9);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);grid-template-columns:repeat(5,minmax(0,1fr));
  }
  #tg-mobile-nav.tg-style-glass-dock .tg-nav-item{height:52px;color:var(--tg-nav-icon-color);border-radius:16px;transition:background .18s ease,color .18s ease,transform .18s ease}
  #tg-mobile-nav.tg-style-glass-dock .tg-nav-icon{top:5px;width:24px;height:24px;filter:none}
  #tg-mobile-nav.tg-style-glass-dock .tg-nav-label{bottom:3px;color:var(--tg-nav-text-color);font-size:10.5px;font-weight:700;text-shadow:none}
  #tg-mobile-nav.tg-style-glass-dock .tg-nav-home{background:rgba(124,58,237,.10);color:var(--tg-nav-active-color)}
  #tg-mobile-nav.tg-style-glass-dock .tg-nav-home .tg-nav-label{color:var(--tg-nav-active-text)}
  #tg-mobile-nav.tg-style-glass-dock .tg-nav-item:hover,#tg-mobile-nav.tg-style-glass-dock .tg-nav-item:focus-visible{background:rgba(124,58,237,.08);transform:translateY(-1px)}
  #tg-mobile-nav.tg-style-glass-dock .tg-nav-promo .tg-nav-icon-wrap{top:-11px;width:42px;height:42px;border-radius:14px;background:var(--tg-nav-middle-bg);box-shadow:0 8px 18px rgba(6,182,212,.30);transform:translateX(-50%) rotate(45deg)}
  #tg-mobile-nav.tg-style-glass-dock .tg-nav-promo .tg-nav-icon-wrap::after{display:none}
  #tg-mobile-nav.tg-style-glass-dock .tg-nav-promo .tg-nav-icon{width:23px;height:23px;color:var(--tg-nav-middle-icon);transform:rotate(-45deg)}
  #tg-mobile-nav.tg-style-glass-dock .tg-nav-promo .tg-nav-label{color:var(--tg-nav-middle-text);text-shadow:none}
}
.tg-auth-buttons.tg-style-glass-dock .tg-auth-btn{border-radius:14px;box-shadow:0 8px 20px rgba(15,23,42,.12)}

/* V15.1: keep the featured Promos icon optically centered inside its shape. */
@media (max-width:767px){
  #tg-mobile-nav .tg-nav-promo .tg-nav-icon-wrap{display:flex;align-items:center;justify-content:center}
  #tg-mobile-nav .tg-nav-promo .tg-nav-icon{position:absolute!important;top:50%!important;left:50%!important;margin:0!important;transform:translate(-50%,-50%)!important;transform-origin:center center}
  #tg-mobile-nav.tg-style-glass-dock .tg-nav-promo .tg-nav-icon{transform:translate(-50%,-50%) rotate(-45deg)!important}
}
/* V15.3 device visibility controls */
.tgsc-device-options label{display:inline-flex;align-items:center;gap:5px;margin:0 18px 6px 0;font-weight:600}
@media (min-width:768px){#tg-mobile-nav{position:fixed;left:12px;right:12px;bottom:12px;z-index:2147483647;grid-template-columns:repeat(5,minmax(0,1fr));max-width:560px;margin:auto}}


/* V15.5.2 Unified Device Renderer
 * Bottom navigation keeps the same mobile-style component on every enabled device.
 * JavaScript remains the single source of truth for device visibility.
 */
#tg-mobile-nav{
  position:fixed;
  left:50%;
  right:auto;
  bottom:max(var(--tg-nav-margin-bottom,8px),env(safe-area-inset-bottom));
  z-index:2147483647;
  grid-template-columns:repeat(5,minmax(0,1fr));
  align-items:stretch;
  width:min(calc(100vw - 16px),560px);
  max-width:560px;
  height:var(--tg-nav-height,55px);
  margin:0!important;
  padding:var(--tg-nav-padding-top,0px) var(--tg-nav-padding-right,4px) var(--tg-nav-padding-bottom,0px) var(--tg-nav-padding-left,4px);
  overflow:visible!important;
  border:1px solid var(--tg-nav-border-color,transparent);
  border-radius:var(--tg-nav-radius,15px);
  background:var(--tg-nav-bg-solid,var(--tg-nav-bg,rgba(20,16,10,.94)));
  box-shadow:0 8px 24px rgba(0,0,0,.30);
  transform:translateX(-50%);
  opacity:1;visibility:visible;pointer-events:auto;
}
#tg-mobile-nav.tg-mobile-nav-show{transform:translateX(-50%);opacity:1;visibility:visible;pointer-events:auto}
#tg-mobile-nav .tg-nav-item{position:relative;display:block;min-width:0;height:calc(var(--tg-nav-height,55px) - var(--tg-nav-padding-top,0px) - var(--tg-nav-padding-bottom,0px));padding:0 1px;color:var(--tg-nav-icon-color,var(--tg-site-text-color));text-decoration:none;-webkit-tap-highlight-color:transparent;touch-action:manipulation}
#tg-mobile-nav .tg-nav-icon{position:absolute;top:5px;left:50%;display:block;width:var(--tg-nav-icon-size,25px);height:var(--tg-nav-icon-size,25px);transform:translateX(-50%);fill:currentColor}
#tg-mobile-nav .tg-nav-label{position:absolute;right:0;bottom:var(--tg-nav-icon-gap,4px);left:0;display:block;overflow:hidden;color:var(--tg-nav-text-color,#fff);font-size:var(--tg-nav-font-size,11.5px);font-weight:700;line-height:1.15;text-align:center;white-space:nowrap;text-overflow:ellipsis}
#tg-mobile-nav .tg-nav-home,#tg-mobile-nav .tg-nav-games,#tg-mobile-nav .tg-nav-login,#tg-mobile-nav .tg-nav-register{color:var(--tg-nav-icon-color,var(--tg-site-text-color))}
#tg-mobile-nav .tg-nav-item:hover,#tg-mobile-nav .tg-nav-item:focus-visible,#tg-mobile-nav .tg-nav-home{color:var(--tg-nav-active-color,var(--tg-site-accent-color))}
#tg-mobile-nav .tg-nav-item:hover .tg-nav-label,#tg-mobile-nav .tg-nav-item:focus-visible .tg-nav-label,#tg-mobile-nav .tg-nav-home .tg-nav-label{color:var(--tg-nav-active-text,var(--tg-site-accent-color))}
#tg-mobile-nav .tg-nav-promo{color:var(--tg-nav-middle-icon,var(--tg-site-accent-color))}
#tg-mobile-nav .tg-nav-promo .tg-nav-icon-wrap{position:absolute;top:-9px;left:50%;display:flex;align-items:center;justify-content:center;width:45px;height:45px;margin:0;border-radius:50%;background:var(--tg-nav-middle-bg,var(--tg-site-button-color));transform:translateX(-50%)}
#tg-mobile-nav .tg-nav-promo .tg-nav-icon{position:absolute!important;top:50%!important;left:50%!important;margin:0!important;color:var(--tg-nav-middle-icon,#fff);transform:translate(-50%,-50%)!important;transform-origin:center center}
#tg-mobile-nav .tg-nav-promo .tg-nav-label{color:var(--tg-nav-middle-text,var(--tg-nav-text-color,#fff))}

/* Preserve every preset on tablet/desktop instead of falling back to an unstyled PC bar. */
#tg-mobile-nav.tg-style-gold-luxury{height:72px;padding:4px 8px 2px;border-color:var(--tg-nav-border-color);border-radius:16px;background:var(--tg-nav-bg-solid);box-shadow:0 -6px 20px rgba(0,0,0,.28)}
#tg-mobile-nav.tg-style-gold-luxury .tg-nav-item{height:65px}
#tg-mobile-nav.tg-style-gold-luxury .tg-nav-icon{top:6px;width:28px;height:28px}
#tg-mobile-nav.tg-style-gold-luxury .tg-nav-label{bottom:5px;font-size:11px;font-weight:800;text-transform:uppercase}
#tg-mobile-nav.tg-style-gold-luxury .tg-nav-promo .tg-nav-icon-wrap{top:3px;width:34px;height:34px;border-radius:8px}

#tg-mobile-nav.tg-style-navy-app{height:66px;padding:3px 4px 2px;border:0;border-top:3px solid var(--tg-nav-border-color);border-radius:0;background:var(--tg-nav-bg-solid);box-shadow:0 -5px 18px rgba(0,0,0,.26)}
#tg-mobile-nav.tg-style-navy-app .tg-nav-item{height:59px}
#tg-mobile-nav.tg-style-navy-app .tg-nav-icon{top:4px;width:27px;height:27px}
#tg-mobile-nav.tg-style-navy-app .tg-nav-label{bottom:3px;font-size:11px;font-weight:800}
#tg-mobile-nav.tg-style-navy-app .tg-nav-promo .tg-nav-icon-wrap{top:3px;width:31px;height:31px;border-radius:8px}

#tg-mobile-nav.tg-style-glass-dock{width:min(calc(100vw - 28px),560px);height:64px;padding:5px 6px;border:1px solid var(--tg-nav-border-color);border-radius:22px;background:rgba(248,251,255,.94);box-shadow:0 12px 34px rgba(15,23,42,.20),inset 0 1px 0 rgba(255,255,255,.9);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}
#tg-mobile-nav.tg-style-glass-dock .tg-nav-item{height:52px;border-radius:16px}
#tg-mobile-nav.tg-style-glass-dock .tg-nav-icon{top:5px;width:24px;height:24px}
#tg-mobile-nav.tg-style-glass-dock .tg-nav-label{bottom:3px;font-size:10.5px}
#tg-mobile-nav.tg-style-glass-dock .tg-nav-promo .tg-nav-icon-wrap{top:-11px;width:42px;height:42px;border-radius:14px;transform:translateX(-50%) rotate(45deg)}
#tg-mobile-nav.tg-style-glass-dock .tg-nav-promo .tg-nav-icon{transform:translate(-50%,-50%) rotate(-45deg)!important}

@media (min-width:768px){
  #tg-mobile-nav{left:50%;right:auto;margin:0!important;transform:translateX(-50%)}
  #tg-mobile-nav.tg-mobile-nav-show{transform:translateX(-50%)}
}

/* V15.5.3 Visibility Core: server-rendered device state; independent of JS/Astra clones. */
@media (min-width:1025px){.tg-auth-buttons.tg-auth-desktop-off{display:none!important}}
@media (min-width:768px) and (max-width:1024px){.tg-auth-buttons.tg-auth-tablet-off{display:none!important}}
@media (max-width:767px){.tg-auth-buttons.tg-auth-mobile-off{display:none!important}}




/* V15.6 Header button modes and stable component-only visibility. */
.tg-auth-buttons .tg-auth-dual{display:flex;align-items:center;justify-content:inherit;gap:var(--tg-auth-gap)}
.tg-auth-buttons .tg-auth-single{display:none;align-items:center;justify-content:inherit}
.tg-auth-buttons .tg-join{background:var(--tg-register-bg);color:var(--tg-register-text);box-shadow:var(--tg-register-shadow)}
.tg-auth-buttons .tg-join:hover,.tg-auth-buttons .tg-join:focus-visible{background:var(--tg-register-hover-bg);color:var(--tg-register-hover-text)}
@media (min-width:1025px){
  .tg-auth-buttons.tg-auth-pc-single .tg-auth-dual{display:none!important}
  .tg-auth-buttons.tg-auth-pc-single .tg-auth-single{display:flex!important}
  .tg-auth-buttons.tg-auth-pc-dual .tg-auth-dual{display:flex!important}
  .tg-auth-buttons.tg-auth-pc-dual .tg-auth-single{display:none!important}
}
@media (max-width:1024px){
  .tg-auth-buttons .tg-auth-dual{display:flex!important}
  .tg-auth-buttons .tg-auth-single{display:none!important}
}
/* Device visibility only controls TG Site Core's rendered component. When embedded in
 * Astra Header Builder, use Astra's Responsive Visibility for the containing HTML component
 * if the whole builder slot must stop occupying layout space. */
@media (min-width:1025px){.tg-auth-buttons.tg-auth-desktop-off{display:none!important}}
@media (min-width:768px) and (max-width:1024px){.tg-auth-buttons.tg-auth-tablet-off{display:none!important}}
@media (max-width:767px){.tg-auth-buttons.tg-auth-mobile-off{display:none!important}}

/* V15.7.6 PC single-button hard fail-safe */
@media (min-width:1025px){
  .tg-auth-buttons[data-tgsc-desktop-mode="single"] .tg-auth-dual{display:none!important}
  .tg-auth-buttons[data-tgsc-desktop-mode="single"] .tg-auth-single{display:flex!important}
  .tg-auth-buttons[data-tgsc-desktop-mode="dual"] .tg-auth-dual{display:flex!important}
  .tg-auth-buttons[data-tgsc-desktop-mode="dual"] .tg-auth-single{display:none!important}
}
@media (max-width:1024px){
  .tg-auth-buttons .tg-auth-dual{display:flex!important}
  .tg-auth-buttons .tg-auth-single{display:none!important}
}

/* V15.7.7 unified PC single-button mode: supports shortcode and legacy Astra HTML. */
@media (min-width:1025px){
  .tg-auth-buttons.tg-auth-pc-single > .tg-login,
  .tg-auth-buttons.tg-auth-pc-single > .tg-register{display:none!important}
  .tg-auth-buttons.tg-auth-pc-single > .tg-auth-single{display:flex!important}
}

/* V15.7.8 Mobile Bottom Navigation Alignment Fix
 * Keep every preset anchored to the viewport instead of theme/container geometry.
 * Gold Luxury and Navy App are full-width bars; Glass Dock remains a centered floating dock.
 */
@media (max-width:767px){
  #tg-mobile-nav.tg-style-gold-luxury,
  #tg-mobile-nav.tg-style-navy-app{
    position:fixed!important;
    left:0!important;
    right:0!important;
    width:100vw!important;
    max-width:none!important;
    margin-left:0!important;
    margin-right:0!important;
    transform:none!important;
  }
  #tg-mobile-nav.tg-style-gold-luxury.tg-mobile-nav-show,
  #tg-mobile-nav.tg-style-navy-app.tg-mobile-nav-show{
    transform:none!important;
  }
  #tg-mobile-nav.tg-style-gold-luxury{
    border-radius:0!important;
  }
  #tg-mobile-nav.tg-style-glass-dock{
    position:fixed!important;
    left:50%!important;
    right:auto!important;
    width:min(calc(100vw - 28px),560px)!important;
    max-width:560px!important;
    margin-left:0!important;
    margin-right:0!important;
    transform:translateX(-50%)!important;
  }
  #tg-mobile-nav.tg-style-glass-dock.tg-mobile-nav-show{
    transform:translateX(-50%)!important;
  }
}

/* V15.7.9 server-rendered nav device visibility */
@media (min-width:1025px){#tg-mobile-nav.tg-nav-desktop-off{display:none!important}}
@media (min-width:768px) and (max-width:1024px){#tg-mobile-nav.tg-nav-tablet-off{display:none!important}}
@media (max-width:767px){#tg-mobile-nav.tg-nav-mobile-off{display:none!important}}

/* V15.8.1 Restored Astra auth-host/empty-row collapse chain from V15.5.5.
 * This is intentionally separate from style presets and gradient animation.
 */
.tgsc-auth-host-hidden,
.tgsc-auth-host-hidden.ast-builder-layout-element,
.tgsc-auth-host-hidden[class*="ast-header-html-"]{
  display:none!important;
  width:0!important;
  height:0!important;
  min-width:0!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  overflow:hidden!important;
  visibility:hidden!important;
  pointer-events:none!important;
}
.tgsc-auth-empty-row-hidden{
  display:none!important;
  width:0!important;
  height:0!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  overflow:hidden!important;
}

/* V15.8.2 Astra mobile Above Header empty-row collapse.
 * Exact target verified from real Astra mobile DOM.
 */
@media (max-width:767px){
  #ast-mobile-header .tgsc-astra-mobile-above-empty{
    display:none!important;
    width:0!important;
    height:0!important;
    min-width:0!important;
    min-height:0!important;
    max-height:0!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    overflow:hidden!important;
    visibility:hidden!important;
    pointer-events:none!important;
  }
}
