/* Rail */
.gsv2-rail{position:fixed;top:0;left:0;bottom:0;width:92px;height:100vh;height:100dvh;z-index:90;display:grid;grid-template-rows:auto minmax(0,1fr) auto auto;align-items:center;justify-items:center;gap:14px;padding:18px 10px;overflow:visible;background:linear-gradient(180deg,rgba(6,6,6,.98),rgba(4,4,4,.96));border-right:1px solid rgba(201,168,76,.2);box-shadow:20px 0 60px rgba(0,0,0,.32);backdrop-filter:blur(16px)}
.gsv2-logo{width:62px;height:64px;display:grid;place-items:center;text-decoration:none!important;line-height:0;margin-bottom:2px}
.gsv2-logo img{width:62px;height:62px;object-fit:contain;display:block}
.gsv2-rail-nav{width:100%;height:100%;max-height:100%;min-height:0;align-self:stretch;display:grid;gap:7px;align-content:start;justify-items:center;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:rgba(224,197,103,.48) transparent;padding:4px 0}
.gsv2-rail-nav::-webkit-scrollbar{width:4px}
.gsv2-rail-nav::-webkit-scrollbar-track{background:transparent}
.gsv2-rail-nav::-webkit-scrollbar-thumb{border-radius:99px;background:rgba(224,197,103,.48)}
.gsv2-rail-link{appearance:none;-webkit-appearance:none;width:50px;height:50px;border-radius:15px;border:1px solid rgba(255,255,255,.1)!important;background:linear-gradient(145deg,rgba(255,255,255,.035),rgba(255,255,255,.012))!important;background-color:var(--fived-ink)!important;color:#d8d0c7!important;display:grid!important;place-items:center;text-decoration:none!important;line-height:0;position:relative;transition:border-color .18s ease,background .18s ease,color .18s ease,box-shadow .18s ease,transform .18s ease;-webkit-tap-highlight-color:transparent}
.gsv2-rail-link svg{position:absolute;left:50%;top:50%;width:20px;height:20px;display:block;stroke:currentColor;stroke-width:1.85;fill:none;margin:0;opacity:.92;transform:translate(-50%,-50%);vector-effect:non-scaling-stroke}
.gsv2-rail-link:hover,.gsv2-rail-link:focus-visible,.gsv2-rail-link:active,.gsv2-rail-link.active,.gsv2-rail-menu.is-open>.gsv2-rail-link{border-color:rgba(224,197,103,.58)!important;background:linear-gradient(145deg,rgba(201,168,76,.18),rgba(255,255,255,.035))!important;background-color:#11100c!important;color:var(--gsv2-gold-light)!important;box-shadow:0 12px 28px rgba(0,0,0,.24),inset 0 0 0 1px rgba(255,255,255,.035)!important;outline:0!important}
.gsv2-rail-link:hover{transform:translateX(1px)}
.gsv2-rail-link.active:before{content:"";position:absolute;left:-12px;width:3px;height:28px;border-radius:99px;background:linear-gradient(180deg,#f1dd83,#b68a24)}
.gsv2-rail-link:after{content:attr(data-label);position:absolute;left:64px;top:50%;z-index:90;transform:translate(6px,-50%);min-width:max-content;max-width:180px;padding:8px 10px;border:1px solid rgba(201,168,76,.24);border-radius:10px;background:rgba(7,7,7,.96);box-shadow:0 14px 34px rgba(0,0,0,.38);color:#f4e7b5;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;line-height:1;opacity:0;pointer-events:none;transition:opacity .16s ease,transform .16s ease}
.gsv2-rail-link:hover:after{opacity:1;transform:translate(0,-50%)}
.gsv2-rail-text{display:none}
.gsv2-rail-user-wrap{position:relative;width:58px;height:58px;margin-top:4px;display:grid;place-items:center}
.gsv2-rail-user{appearance:none;-webkit-appearance:none;position:relative;width:56px;height:56px;min-width:56px;min-height:56px;padding:0!important;margin:0;border-radius:50%;border:1px solid rgba(224,197,103,.72)!important;display:block;text-decoration:none!important;background:#090909!important;background-color:#090909!important;background-image:none!important;box-shadow:0 10px 24px rgba(0,0,0,.32)!important;color:var(--gsv2-gold-light)!important;overflow:hidden;cursor:pointer;line-height:0;outline:0!important;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease,filter .18s ease}
.gsv2-rail-user:hover,.gsv2-rail-user:focus-visible,.gsv2-rail-user[aria-expanded="true"],button.gsv2-rail-user:hover,button.gsv2-rail-user:focus-visible,button.gsv2-rail-user[aria-expanded="true"]{background:#090909!important;background-color:#090909!important;background-image:none!important;border-color:#efd46d!important;box-shadow:0 12px 28px rgba(0,0,0,.38)!important;transform:translateY(-1px)!important;filter:saturate(1.05)}
.gsv2-rail-user:focus-visible{outline:0!important}
.gsv2-rail-user img{position:absolute;inset:0;width:100%;height:100%;border:0!important;border-radius:50%;object-fit:cover;display:block;max-width:none;outline:0!important;box-shadow:none!important}
.gsv2-rail-user span{position:absolute;inset:0;border-radius:50%;display:grid;place-items:center;font-family:var(--gsv2-serif);font-size:24px;line-height:1;background:rgba(0,0,0,.28)}
.gsv2-user-menu{position:absolute;left:68px;bottom:0;width:220px;border:1px solid var(--gsv2-gold-border);border-radius:16px;background:var(--fived-ink);box-shadow:0 20px 60px rgba(0,0,0,.55);padding:8px;display:none;z-index:100}
.gsv2-user-menu.is-open{display:grid;gap:4px}
.gsv2-user-menu strong{display:block;padding:8px 12px 6px;color:#f2df91;font-size:11px;letter-spacing:.12em;text-transform:uppercase}
.gsv2-user-menu a{min-height:38px;border-radius:12px;padding:0 12px;display:flex;align-items:center;color:#d8d0c7;text-decoration:none!important;font-size:12px;font-weight:700}
.gsv2-user-menu a:hover{background:rgba(201,168,76,.1);color:var(--gsv2-gold-light)!important}
.gsv2-user-menu .is-danger,.gsv2-rail-link.is-logout{color:#ffb4b4!important}

/* Submenus laterais do rail: abrem apenas por toque/clique. */
.gsv2-rail-menu{position:relative;width:100%;display:grid;justify-items:center;gap:0}
.gsv2-rail-menu>.gsv2-rail-link{flex:0 0 auto}
.gsv2-rail-submenu{position:fixed;left:78px;top:12px;z-index:120;width:220px;max-height:calc(100dvh - 24px);padding:10px;overflow-x:hidden;overflow-y:auto;display:grid;gap:6px;justify-items:stretch;border:1px solid rgba(201,168,76,.28);border-radius:16px;background:linear-gradient(145deg,rgba(18,18,17,.99),rgba(5,5,5,.99))!important;background-color:var(--fived-input)!important;box-shadow:0 22px 55px rgba(0,0,0,.55);opacity:0;visibility:hidden;pointer-events:none;transform:translateX(10px);transition:opacity .18s ease,transform .18s ease,visibility .18s ease}
.gsv2-rail-menu.is-open .gsv2-rail-submenu{opacity:1;visibility:visible;pointer-events:auto;transform:translateX(0)}
.gsv2-rail-menu.is-open>.gsv2-rail-link:after{opacity:0!important}
.gsv2-rail-sublink{position:relative;width:100%;min-height:43px;padding:0 12px;border:1px solid rgba(201,168,76,.16)!important;border-radius:11px;display:flex!important;align-items:center;gap:11px;background:rgba(201,168,76,.04)!important;background-color:#0b0b0a!important;color:#d5cec4!important;text-decoration:none!important;line-height:1.2;transition:border-color .18s ease,background .18s ease,color .18s ease,transform .18s ease}
.gsv2-rail-sublink svg{position:static;flex:0 0 auto;width:18px;height:18px;display:block;stroke:currentColor;stroke-width:1.8;fill:none;transform:none}
.gsv2-rail-sublink>span{display:block;font-size:11px;font-weight:800;letter-spacing:.09em;text-transform:uppercase}
.gsv2-rail-sublink:hover,.gsv2-rail-sublink:focus-visible,.gsv2-rail-sublink:active,.gsv2-rail-sublink.active{border-color:rgba(224,197,103,.62)!important;background:rgba(201,168,76,.16)!important;background-color:#17150e!important;color:var(--gsv2-gold-light)!important;outline:0!important}
.gsv2-rail-sublink:hover{transform:translateX(2px)}
.gsv2-rail-sublink.active:before{content:"";position:absolute;left:-1px;width:3px;height:22px;border-radius:99px;background:#d8b84e}
.gsv2-rail-sublink:after{display:none}
.ge5d-mobile-links .ge5d-mobile-sublink{margin-top:-6px!important;padding-left:32px!important;color:var(--fived-gold-light)!important;font-size:12px!important;position:relative}
.ge5d-mobile-links .ge5d-mobile-sublink:before{content:"";position:absolute;left:16px;top:50%;width:7px;height:1px;background:var(--fived-gold)}
.ge5d-mobile-links .ge5d-mobile-group-title{display:block;margin:10px 0 8px;padding:0 16px;color:#8f887d;font-size:10px;font-weight:800;letter-spacing:.16em;text-transform:uppercase}
.ge5d-nav-links .ge5d-nav-has-submenu{display:flex;align-items:center;gap:7px}
.ge5d-nav-links .ge5d-nav-parent{color:#d8d0c7;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
.ge5d-nav-links .ge5d-nav-sublink{color:var(--fived-gold-light)!important;font-size:10px!important}

@media(max-height:760px) and (min-width:1025px){
  .gsv2-rail{gap:8px;padding:10px 8px}
  .gsv2-logo,.gsv2-logo img{width:50px;height:50px}
  .gsv2-rail-nav{gap:5px}
  .gsv2-rail-link{width:44px;height:44px;border-radius:13px}
  .gsv2-rail-link.active:before{left:-13px;height:24px}
  .gsv2-rail-user-wrap{width:50px;height:50px;margin-top:0}
  .gsv2-rail-user{width:48px;height:48px;min-width:48px;min-height:48px}
}

/* Staff compact menu: collapsed parent groups opened by touch/click. */
@media(max-width:1024px){
  .ge5d-staff-mobile-menu .ge5d-mobile-parent{
    appearance:none!important;
    -webkit-appearance:none!important;
    width:min(420px,calc(100vw - 48px))!important;
    min-height:48px!important;
    margin:0 auto!important;
    position:relative!important;
    padding:0 38px!important;
    border:0!important;
    border-radius:0!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:11px!important;
    background:transparent!important;
    background-image:none!important;
    color:var(--fived-gold-light)!important;
    font-family:'DM Sans',sans-serif!important;
    font-size:13px!important;
    font-weight:750!important;
    line-height:1.2!important;
    letter-spacing:.14em!important;
    text-align:center!important;
    text-transform:uppercase!important;
    box-shadow:none!important;
    cursor:pointer!important;
  }
  .ge5d-staff-mobile-menu .ge5d-mobile-parent:hover,
  .ge5d-staff-mobile-menu .ge5d-mobile-parent:focus-visible,
  .ge5d-staff-mobile-menu .ge5d-mobile-parent[aria-expanded="true"]{
    border-color:transparent!important;
    background:transparent!important;
    color:#f4df91!important;
    outline:0!important;
  }
  .ge5d-staff-mobile-menu .ge5d-mobile-parent-chevron{
    position:relative!important;
    right:auto!important;
    top:auto!important;
    flex:0 0 9px!important;
    width:9px!important;
    height:9px!important;
    border-right:1.5px solid currentColor!important;
    border-bottom:1.5px solid currentColor!important;
    transform:translateY(-2px) rotate(45deg)!important;
    transition:transform .18s ease!important;
  }
  .ge5d-staff-mobile-menu .ge5d-mobile-parent[aria-expanded="true"] .ge5d-mobile-parent-chevron{
    transform:translateY(2px) rotate(225deg)!important;
  }
  .ge5d-staff-mobile-menu .ge5d-mobile-submenu{
    width:min(170px,calc(100vw - 72px))!important;
    margin:7px auto 10px!important;
    padding:7px 7px 7px 10px!important;
    border-left:1px solid rgba(201,168,76,.25)!important;
    display:grid!important;
    gap:5px!important;
  }
  .ge5d-staff-mobile-menu .ge5d-mobile-submenu[hidden]{
    display:none!important;
  }
  .ge5d-staff-mobile-menu .ge5d-mobile-submenu .ge5d-mobile-sublink{
    width:100%!important;
    max-width:100%!important;
    min-height:42px!important;
    margin:0!important;
    padding:0 16px!important;
    border:0!important;
    border-radius:8px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    background:transparent!important;
    color:#d8d0c7!important;
    font-size:12px!important;
    font-weight:700!important;
    letter-spacing:.10em!important;
    text-align:center!important;
    box-sizing:border-box!important;
  }
  #ge5d-mobile-menu.ge5d-staff-mobile-menu .ge5d-mobile-submenu>a.ge5d-mobile-sublink{
    width:100%!important;
    max-width:100%!important;
  }
  .ge5d-staff-mobile-menu .ge5d-mobile-submenu .ge5d-mobile-sublink::before{
    display:none!important;
  }
  .ge5d-staff-mobile-menu .ge5d-mobile-submenu .ge5d-mobile-sublink:hover,
  .ge5d-staff-mobile-menu .ge5d-mobile-submenu .ge5d-mobile-sublink:focus-visible,
  .ge5d-staff-mobile-menu .ge5d-mobile-submenu .ge5d-mobile-sublink[aria-current="page"]{
    background:rgba(201,168,76,.09)!important;
    color:var(--fived-gold-light)!important;
  }
}

