/* No external font import: this page's CSP (index.php/indexQ.php only, see
   vhost.conf) intentionally stays style-src 'self' with no third-party
   origins, matching every other page on this site - fall back to the
   system stack the rest of the site already uses. */
* { box-sizing: border-box; }

html, body
{
  margin: 0;
  padding: 0;
  font-family: Helvetica, Arial, Geneva, Swiss, SunSans-Regular, sans-serif;
}

.tb-content-frame
{
  position: fixed;
  top: 64px;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: calc(100% - 64px);
  border: 0;
}

.tb-row
{
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  height: 64px;
  z-index: 100;
  display: flex;
  align-items: center;
  padding: 0 20px;
  gap: 18px;
  background: #ffffff;
  border-bottom: 1px solid #e2e8f0;
}

#tb-backdrop
{
  display: none;
  position: fixed;
  top: 64px;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(15, 23, 42, 0.12);
  z-index: 50;
}
#tb-backdrop.tb-open { display: block; }

.tb-logo
{
  display: flex;
  align-items: center;
  gap: 9px;
  text-decoration: none;
  flex-shrink: 0;
}
.tb-logo img { display: block; }
.tb-logo span
{
  font-weight: 800;
  font-size: 18px;
  color: #0f172a;
}

.tb-sep { width: 1px; height: 26px; background: #e2e8f0; flex-shrink: 0; }

.tb-nav
{
  display: flex;
  align-items: center;
  gap: 2px;
  flex-grow: 1;
  flex-wrap: wrap;
}

.tb-link, .tb-toggle
{
  font-family: inherit;
  font-size: 15px;
  font-weight: 600;
  color: #334155;
  text-decoration: none;
  background: none;
  border: none;
  cursor: pointer;
  padding: 9px 12px;
  border-radius: 8px;
  display: flex;
  align-items: center;
  gap: 6px;
  white-space: nowrap;
}
.tb-link:hover, .tb-toggle:hover { color: #0f766e; }
.tb-link.tb-active { color: #0f766e; background: #f0fdfa; font-weight: 700; }
.tb-toggle.tb-open { color: #0f766e; background: #f0fdfa; }

.tb-chev { transition: transform 0.15s ease; flex-shrink: 0; }
.tb-toggle.tb-open .tb-chev { transform: rotate(180deg); }

.tb-donate
{
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 9px 18px;
  border-radius: 9px;
  background: linear-gradient(135deg, #f59e0b 0%, #f97316 100%);
  color: #ffffff;
  font-size: 14.5px;
  font-weight: 700;
  text-decoration: none;
  flex-shrink: 0;
}
.tb-donate:hover { color: #ffffff; }

.tb-right { display: flex; align-items: center; gap: 10px; flex-shrink: 0; }

.tb-lang-toggle
{
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 8px 12px;
  border-radius: 8px;
  border: 1px solid #e2e8f0;
  background: #ffffff;
  font-size: 14.5px;
  font-weight: 600;
  font-family: inherit;
  color: #334155;
  cursor: pointer;
}
.tb-lang-toggle.tb-open { color: #0f766e; border-color: #99e6dc; }
.tb-lang-toggle img { display: block; border-radius: 2px; }

.tb-panel
{
  display: none;
  position: fixed;
  top: 64px;
  left: 20px;
  min-width: 220px;
  max-width: 290px;
  background: #ffffff;
  border: 1px solid #eef1f4;
  border-radius: 10px;
  box-shadow: 0 12px 28px rgba(15, 23, 42, 0.14);
  padding: 8px;
  z-index: 110;
}
.tb-panel.tb-open { display: block; }

.tb-grid { display: flex; flex-direction: column; gap: 1px; }

.tb-divider { height: 1px; background: #eef1f4; margin: 6px 4px; }

.tb-pill
{
  font-size: 14.5px;
  color: #334155;
  text-decoration: none;
  padding: 9px 11px;
  border-radius: 7px;
  background: #ffffff;
  border: none;
}
.tb-pill:hover { color: #0f766e; background: #f0fdfa; }

.tb-lang-item
{
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 9px 13px;
  border-radius: 8px;
  text-decoration: none;
  color: #334155;
  font-size: 14.5px;
  border: 1px solid #eef1f4;
  background: #ffffff;
}
.tb-lang-item:hover { color: #0f766e; background: #f0fdfa; }
.tb-lang-item.tb-current { background: #f0fdfa; color: #0f766e; font-weight: 700; }
.tb-lang-item img { display: block; border-radius: 2px; }
