:root{
  --tt-text:#111;
  --tt-border: rgba(0,0,0,.10);
  --tt-bg:#fff;
  --tt-soft:#f5f6f7;
  --tt-radius: 18px;
  --tt-green:#19b47b; /* близко к стилю на скрине */
}

/* Header row */
.tt-header{
  position: sticky;
  top: 0;
  z-index: 999;
  background: var(--tt-bg);
  border-bottom: 1px solid var(--tt-border);
}
.tt-header__inner{
  max-width: 1240px;
  margin: 0 auto;
  padding: 14px 16px;
  display: grid;
  grid-template-columns: max-content max-content 1fr max-content max-content;
  gap: 14px;
  align-items: center;
}

.tt-brand{
  display: inline-flex;
  align-items: center;
  gap: 10px;
  text-decoration: none;
  color: var(--tt-text);
  font-weight: 900;
  letter-spacing: .2px;
}
.tt-brand img{ max-height: 42px; width:auto; }
.tt-brand__name{ font-size: 18px; }

/* Region */
.tt-header__region{
  display:flex;
  align-items:center;
}

/* Search */
.tt-search{
  display:flex;
  align-items:center;
  gap: 10px;
  height: 46px;
  padding: 0 12px;
  background: var(--tt-soft);
  border: 1px solid transparent;
  border-radius: 999px;
}
.tt-search__icon{ opacity:.6; }
.tt-search__input{
  width: 100%;
  border: 0;
  outline: none;
  background: transparent;
  font-size: 15px;
}
.tt-search__btn{
  height: 34px;
  padding: 0 12px;
  border: 0;
  border-radius: 999px;
  background: var(--tt-green);
  color:#fff;
  font-weight: 800;
  cursor:pointer;
}
.tt-search__btn:hover{ filter: brightness(.98); }

/* Icons */
.tt-iconlink{
  width: 46px;
  height: 46px;
  border-radius: 999px;
  border: 1px solid var(--tt-border);
  background: #fff;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  text-decoration:none;
  color: var(--tt-text);
  font-size: 18px;
}

/* Menu button */
.tt-menubtn{
  width: 46px;
  height: 46px;
  border-radius: 999px;
  border: 1px solid var(--tt-border);
  background: #fff;
  cursor: pointer;
  font-size: 18px;
}

/* Popup menu */
.tt-menu[hidden]{ display:none; }
.tt-menu{
  position: fixed;
  inset: 0;
  z-index: 2000;
}
.tt-menu__backdrop{
  position:absolute;
  inset:0;
  background: rgba(0,0,0,.35);
}
.tt-menu__panel{
  position:absolute;
  top: 16px;
  right: 16px;
  width: min(420px, calc(100vw - 32px));
  background: #fff;
  border-radius: 22px;
  box-shadow: 0 24px 80px rgba(0,0,0,.25);
  overflow: hidden;
}
.tt-menu__head{
  padding: 14px 16px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  border-bottom: 1px solid var(--tt-border);
}
.tt-menu__title{ font-weight: 900; }
.tt-menu__close{
  width: 40px;
  height: 40px;
  border-radius: 999px;
  border: 1px solid var(--tt-border);
  background:#fff;
  cursor:pointer;
}
.tt-menu__body{ padding: 10px 16px 16px; }

.tt-popup-menu{
  list-style:none;
  margin:0;
  padding:0;
  display:flex;
  flex-direction:column;
  gap: 6px;
}
.tt-popup-menu a{
  display:flex;
  align-items:center;
  padding: 12px 12px;
  border-radius: 14px;
  text-decoration:none;
  color: var(--tt-text);
  font-weight: 750;
}
.tt-popup-menu a:hover{
  background: var(--tt-soft);
}

/* Mobile tweaks */
@media (max-width: 860px){
  .tt-brand__name{ display:none; }
  .tt-search__btn{ display:none; }
  .tt-header__inner{
    grid-template-columns: max-content max-content 1fr max-content max-content;
  }
}
