/* Approved navigation: guide categories, routes, city stories and radio. */
.header.wrap { position: relative; display: flex; align-items: center; gap: 26px; height: 88px; }
.header > .brand { flex: none; font-size: 34px; letter-spacing: -1.9px; white-space: nowrap; }
.header > .brand > svg { width: 32px; height: 32px; margin-right: 9px; }
.header .desktop-nav {
  display: flex; flex: 1; align-items: center; justify-content: center; gap: 28px;
  min-width: 0; margin: 0; padding: 0; border: 0; overflow: visible; white-space: nowrap;
}
.header .desktop-nav > a, .header .header-guide > summary {
  display: inline-flex; align-items: center; min-height: 44px; padding: 8px 0;
  color: var(--ink); font-size: 15px; font-weight: 600; line-height: 1.5;
}
.header .desktop-nav > a:hover, .header .header-guide > summary:hover { color: #9a5228; }
.header .desktop-nav > a.active, .header .header-guide:has(a.active) > summary {
  color: var(--ink); text-decoration: underline; text-decoration-color: var(--orange);
  text-decoration-thickness: 2px; text-underline-offset: 8px;
}
.header .header-guide { display: block; position: static; flex: none; }
.header .header-guide > summary { gap: 6px; list-style: none; cursor: pointer; }
.header .header-guide > summary::-webkit-details-marker { display: none; }
.header .header-guide > summary > svg { width: 13px; height: 13px; fill: none; stroke: currentColor; stroke-width: 1.5; stroke-linecap: round; stroke-linejoin: round; }
.header .header-guide[open] > summary > svg { transform: rotate(180deg); }
.header .header-guide-links {
  position: absolute; top: calc(100% - 6px); left: 50%; transform: translateX(-50%); z-index: 1350;
  display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 4px;
  width: min(720px, 100%); max-height: calc(100dvh - 110px); overflow: auto;
  padding: 12px; border: 1px solid #dde3d8; border-radius: 14px;
  background: var(--paper); box-shadow: 0 12px 28px #223c321a;
}
.header .header-guide-links > a { display: flex; align-items: center; gap: 10px; min-height: 48px; padding: 12px; font-size: 15px; font-weight: 500; line-height: 1.5; border-radius: 7px; white-space: normal; }
.header .header-guide-links > a:hover, .header .header-guide-links > a.active { background: var(--soft); }
.header .header-guide-links .icon { width: 19px; height: 19px; }
.header .header-right { display: flex; flex: none; align-items: center; gap: 4px; min-width: 0; margin: 0; padding: 0; border: 0; }
.header .account-link, .header .saved-link, .header .plan-link {
  position: relative; display: inline-flex; flex: none; align-items: center; justify-content: center;
  width: 42px; height: 44px; min-width: 42px; min-height: 44px; gap: 0; padding: 0;
  border: 0; border-radius: 50%; background: transparent;
}
.header .account-link:hover, .header .saved-link:hover, .header .plan-link:hover { background: var(--soft); }
.header .header-label, .header .account-link > span:not(.account-header-avatar):not(.header-icon) { display: none !important; }
.header .header-icon { display: inline-flex !important; flex: none; align-items: center; justify-content: center; }
.header .header-icon > .icon, .header .account-link > .icon { display: block; width: 21px; height: 21px; }
.header .account-link > .account-header-avatar { display: inline-flex !important; width: 30px; height: 30px; border-radius: 50%; overflow: hidden; }
.header .account-header-avatar img { width: 30px; height: 30px; object-fit: cover; margin: 0; }
.header .saved-link > .counter, .header .plan-link > b {
  position: absolute; top: -1px; right: -2px; display: grid; place-items: center;
  min-width: 18px; height: 18px; padding: 0 4px; border: 2px solid var(--paper);
  border-radius: 10px; background: #f5c6a5; color: var(--ink); font-size: 10px; line-height: 1;
}
.header .counter[hidden], .header .plan-link > b[hidden] { display: none !important; }
.header .desktop-nav > .header-mobile-plan { display: none; }
.header .header-menu-toggle { display: none; }

@media (max-width: 960px) {
  .header.wrap {
    display: grid; grid-template-columns: minmax(0, 1fr) auto; grid-template-rows: 76px auto;
    align-items: center; column-gap: 12px; row-gap: 0; height: auto;
  }
  .header > .brand { grid-column: 1; grid-row: 1; font-size: 32px; letter-spacing: -1.7px; }
  .header > .brand > svg { width: 29px; height: 29px; margin-right: 7px; }
  .header .header-right { grid-column: 2; grid-row: 1; gap: 3px; }
  .header .account-link, .header .saved-link, .header .plan-link, .header .header-menu-toggle { width: 40px; height: 44px; min-width: 40px; min-height: 44px; padding: 0; border: 0; background: transparent; }
  .header .plan-link { display: none; }
  .header .header-menu-toggle { display: inline-flex; align-items: center; justify-content: center; border-radius: 50%; }
  .header .header-menu-toggle > svg { width: 23px; height: 23px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; }
  .header .header-menu-toggle[aria-expanded="true"] { background: var(--soft); }
  .header .desktop-nav {
    grid-column: 1 / -1; grid-row: 2; display: grid; grid-template-columns: 1fr 1fr;
    gap: 4px; margin: 0 0 16px; padding: 12px; border: 1px solid var(--line); border-radius: 14px;
    background: var(--paper); white-space: normal;
  }
  .header.header-enhanced:not(.is-menu-open) .desktop-nav { display: none; }
  .header .desktop-nav > a { min-height: 48px; gap: 10px; padding: 12px; border-radius: 7px; font-size: 15px; font-weight: 500; }
  .header .desktop-nav > a.active { background: var(--soft); text-decoration: none; }
  .header .desktop-nav > .header-mobile-plan { display: inline-flex; }
  .header .header-mobile-plan .icon { width: 19px; height: 19px; }
  .header .header-guide { grid-column: 1 / -1; }
  .header.header-enhanced .header-guide > summary { display: none; }
  .header .header-guide-links { position: static; transform: none; grid-template-columns: 1fr 1fr; gap: 4px; width: auto; max-height: none; overflow: visible; padding: 0; border: 0; border-radius: 0; box-shadow: none; background: transparent; }
}
@media (max-width: 600px) {
  .header.wrap { width: calc(100% - 40px); }
  .header .desktop-nav { padding: 8px; }
  .header .desktop-nav > a, .header .header-guide-links > a { gap: 8px; padding: 10px 8px; }
}
@media (max-width: 350px) {
  .header.wrap { width: calc(100% - 28px); column-gap: 4px; }
  .header > .brand { font-size: 29px; }
  .header > .brand > svg { width: 26px; height: 26px; margin-right: 6px; }
  .header .header-right { gap: 0; }
}

.account-menu{position:relative;flex:none;z-index:220}.account-menu-panel{position:absolute;right:0;top:calc(100% + 14px);width:248px;border:1px solid #e3e5db;border-radius:16px;padding:9px;background:#fffefa;box-shadow:0 16px 48px #183c2b24;text-align:left}.account-menu-panel[hidden]{display:none}.account-menu-identity{padding:12px 12px 14px;border-bottom:1px solid #e9eadf;margin-bottom:5px;overflow-wrap:anywhere}.account-menu-identity strong{display:block;font-size:14px;line-height:1.5}.account-menu-identity>span{display:block;font-size:11px;color:#7c877e;margin-top:3px}.account-menu-panel>button,.account-menu-panel>a[role=menuitem]{display:flex;align-items:center;gap:11px;width:100%;min-height:44px;border:0;border-radius:9px;background:transparent;color:#243f35;padding:10px 12px;font:inherit;font-size:12px;text-align:left;cursor:pointer}.account-menu-panel>button:hover,.account-menu-panel>button:focus-visible,.account-menu-panel>a[role=menuitem]:hover,.account-menu-panel>a[role=menuitem]:focus-visible{background:#eef1e7;outline:0}.account-menu-panel .icon{width:17px;height:17px;flex:none;opacity:.75}.account-menu-divider{height:1px;background:#e9eadf;margin:6px 7px}.account-menu-panel>button[data-account="logout"]{color:#87604d}@media(max-width:480px){.account-menu-panel{position:fixed;top:76px;right:16px;max-width:calc(100vw - 32px)}.is-telegram .account-menu-panel{top:calc(64px + var(--yuzhnee-tg-top,0px))}}
.header .account-header-avatar{align-items:center;justify-content:center;background:#e8eee1;color:#243f35;font-size:12px;font-weight:600}

.mobile-menu-sheet{margin:auto auto 0;width:min(100%,600px);max-width:600px;max-height:88dvh;padding:24px 20px calc(26px + env(safe-area-inset-bottom));border:1px solid #dde3d8;border-bottom:0;border-radius:28px 28px 0 0;background:var(--paper);color:var(--ink);box-shadow:0 -14px 70px #132e2529;overflow:auto;overscroll-behavior:contain}
.mobile-menu-sheet::backdrop{background:#182f2b6b;backdrop-filter:blur(3px)}
.mobile-menu-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px}
.mobile-menu-heading h2{font-size:25px;letter-spacing:-.8px;margin:0}
.mobile-menu-heading>button{display:grid;place-items:center;flex:none;width:44px;height:44px;border-radius:50%;background:#e9ede2}
.mobile-menu-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.mobile-menu-grid>a{display:flex;align-items:center;gap:12px;min-height:64px;padding:14px;border:1px solid #e2e6da;border-radius:18px;background:#fffefa;font-size:12px;font-weight:600;line-height:1.5}
.mobile-menu-grid>a:hover,.mobile-menu-grid>a.active{background:#e8eee1;border-color:#ccd7c5}
.mobile-menu-grid .icon{width:21px;height:21px;color:#718569}
body.is-mobile-menu-open{overflow:hidden}
@media(max-width:600px){
  .header.wrap{grid-template-rows:70px;grid-template-columns:1fr;height:70px}
  .header .header-right,.header .desktop-nav,.header.is-menu-open .desktop-nav{display:none!important}
  .mobile-nav{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));align-items:start;gap:0;padding:8px 6px calc(8px + env(safe-area-inset-bottom));min-height:66px}
  .mobile-nav>a,.mobile-nav>button,.mobile-profile-slot .account-link{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;min-width:0;min-height:48px;width:100%;padding:2px 0;border:0;border-radius:12px;background:transparent;color:#78866e;font-size:9px;font-weight:500;line-height:1.4;text-align:center}
  .mobile-nav .icon{display:block;width:23px;height:23px;flex:none}
  .mobile-nav>a.active,.mobile-nav>button.active,.mobile-nav>button[aria-expanded="true"],.mobile-profile-slot .account-link.active{color:#ad6739}
  .mobile-profile-slot{min-width:0}
  .mobile-profile-slot .account-link>span:not(.account-header-avatar){display:block}
  .mobile-profile-slot .account-menu{z-index:auto}
  .mobile-profile-slot .account-header-avatar{display:grid;place-items:center;width:24px;height:24px;border:1px solid #cad4c1;border-radius:50%;background:#e8eee1;color:#243f35;overflow:hidden;font-size:11px;font-weight:650}
  .mobile-profile-slot .account-header-avatar img{display:block;width:100%;height:100%;object-fit:cover}
  .mobile-profile-slot .account-link.active .account-header-avatar{border-color:#cc8a5f;box-shadow:0 0 0 2px #f3d7c0}
  .mobile-profile-slot .account-menu-panel,.is-telegram .mobile-profile-slot .account-menu-panel{position:fixed;top:auto;bottom:calc(78px + env(safe-area-inset-bottom));right:12px;width:270px;max-width:calc(100vw - 24px);max-height:calc(100dvh - 110px);overflow:auto;z-index:2}
}
@media(prefers-reduced-motion:no-preference){.mobile-menu-sheet[open]{animation:mobile-menu-rise .2s ease-out}@keyframes mobile-menu-rise{from{transform:translateY(24px);opacity:0}to{transform:translateY(0);opacity:1}}}
