/* TetherMate v14.7.9 - mobile-only account-first navigation. */
@media (max-width:800px) {
  .site-header .mobile-menu {
    position:absolute;
    top:100%;
    left:0;
    right:0;
    z-index:110;
    max-height:calc(100vh - 67px);
    max-height:calc(100dvh - 67px);
    overflow-y:auto;
    overscroll-behavior:contain;
    -webkit-overflow-scrolling:touch;
    padding:18px max(20px,calc((100vw - 480px)/2)) 30px;
    background:#fff;
    border-bottom:1px solid #e8edf6;
    box-shadow:0 18px 32px rgba(15,39,81,.13);
    gap:0;
  }
  .tm-mobile-group + .tm-mobile-group {
    margin-top:20px;
    padding-top:19px;
    border-top:1px solid #eaf0f8;
  }
  .tm-mobile-group-title {
    margin:0 0 11px;
    color:#8190a8;
    font-size:11px;
    font-weight:780;
    letter-spacing:.045em;
  }
  .tm-mobile-quick-grid,
  .tm-mobile-admin-grid {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:9px;
  }
  .site-header .mobile-menu a.tm-mobile-quick,
  .site-header .mobile-menu button.tm-mobile-quick {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:7px;
    min-width:0;
    width:100%;
    min-height:49px;
    padding:13px 14px;
    border:1px solid #e2e9f5;
    border-radius:11px;
    background:#f7f9fe;
    color:#243c64;
    font-size:13px;
    line-height:1.35;
    font-weight:750;
    text-align:left;
    white-space:nowrap;
  }
  .site-header .mobile-menu a.tm-mobile-quick-primary {
    border-color:#315ff5;
    background:#315ff5;
    color:#fff;
  }
  .site-header .mobile-menu .tm-mobile-quick span[aria-hidden="true"] {
    font-size:14px;
    opacity:.65;
    flex-shrink:0;
  }
  .tm-mobile-logout-form {margin:0;min-width:0;width:100%;}
  .site-header .mobile-menu button.tm-mobile-logout {
    border-color:#e5e9f0;
    background:#fff;
    color:#66758e;
    cursor:pointer;
  }
  .site-header .mobile-menu .tm-mobile-admin-grid a {
    display:flex;
    align-items:center;
    justify-content:center;
    min-width:0;
    min-height:45px;
    padding:12px 8px;
    border:1px solid #e2e9f5;
    border-radius:9px;
    background:#fff;
    color:#344c74;
    font-size:12px;
    line-height:1.4;
    text-align:center;
    font-weight:740;
  }
  /* Keep notification dots above the labels in mobile administrator links. */
  .tm-mobile-admin-grid .tm-nav-pending-label {position:relative;}
  .tm-mobile-admin-grid .tm-nav-alert-dot {top:-10px;}
  .tm-mobile-public-list {display:flex;flex-direction:column;}
  .site-header .mobile-menu .tm-mobile-public-list a {
    padding:12px 3px;
    font-size:14px;
    font-weight:650;
    line-height:1.4;
    color:#455878;
    border-bottom:1px solid #f0f3f9;
  }
  .tm-mobile-exchanges {margin-top:4px;}
  .tm-mobile-exchanges summary {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    padding:13px 3px;
    list-style:none;
    cursor:pointer;
    color:#455878;
    font-size:14px;
    font-weight:700;
  }
  .tm-mobile-exchanges summary::-webkit-details-marker {display:none;}
  .tm-mobile-exchanges summary::marker {content:'';}
  .tm-mobile-chevron {
    width:8px;
    height:8px;
    margin-right:6px;
    border-right:1.7px solid #8294b1;
    border-bottom:1.7px solid #8294b1;
    transform:rotate(45deg);
    transition:transform .15s;
  }
  .tm-mobile-exchanges[open] .tm-mobile-chevron {transform:rotate(225deg);}
  .tm-mobile-exchange-list {
    display:flex;
    flex-direction:column;
    gap:0;
    padding:3px 15px 8px;
    background:#f7f9fd;
    border-radius:10px;
  }
  .site-header .mobile-menu .tm-mobile-exchange-list a {
    padding:11px 2px;
    font-size:13px;
    line-height:1.4;
    font-weight:600;
    color:#607391;
  }
  .tm-mobile-exchange-list a + a {border-top:1px solid #e9eff8;}
  .site-header .mobile-menu a:focus-visible,
  .site-header .mobile-menu button:focus-visible,
  .tm-mobile-exchanges summary:focus-visible {
    outline:2px solid #315ff5;
    outline-offset:2px;
  }
}
@media (max-width:360px){
  .site-header .mobile-menu a.tm-mobile-quick,
  .site-header .mobile-menu button.tm-mobile-quick {font-size:12px;padding-inline:10px;}
}

/* v14.8.1: compact guest-only signup pill beside the mobile hamburger. */
.tm-mobile-header-signup { display:none; }
@media (max-width:800px) {
  .site-header .nav-row { gap:12px; }
  .site-header .brand-real { min-width:0; flex-shrink:1; }
  .site-header .tm-mobile-header-signup {
    display:inline-flex;
    flex:0 0 auto;
    align-items:center;
    justify-content:center;
    margin-left:auto;
    min-height:34px;
    padding:8px 14px;
    border-radius:999px;
    background:#315ff5;
    color:#fff;
    font-size:12px;
    font-weight:780;
    letter-spacing:-.025em;
    white-space:nowrap;
    line-height:1;
    box-shadow:0 2px 7px rgba(49,95,245,.12);
    transition:background .15s ease;
  }
  .site-header .tm-mobile-header-signup:hover { background:#2453e6; }
  .site-header .tm-mobile-header-signup:focus-visible {
    outline:2px solid #315ff5;
    outline-offset:3px;
  }
  .site-header .menu-toggle { flex:0 0 auto; }
}
@media (max-width:380px) {
  .site-header .nav-row { gap:7px; }
  .site-header .brand-real { font-size:19px; gap:7px; }
  .site-header .real-logo { transform:scale(.9); transform-origin:left center; width:31px; }
  .site-header .tm-mobile-header-signup { font-size:11px; min-height:32px; padding:8px 12px; }
  .site-header .menu-toggle { padding-inline:9px; }
}
@media (max-width:340px) {
  .site-header .brand-real { font-size:17px; gap:5px; }
  .site-header .real-logo { transform:scale(.8); width:27px; }
  .site-header .tm-mobile-header-signup { padding-inline:10px; }
  .site-header .nav-row { gap:5px; }
}
