/* FanSecret на широком экране (Макс 2026-10-24: «берёшь наш дизайн на мини-аппке и адаптируешь его под 16:9 формат сайта»).
   Только в браузере (html.web — не Telegram и не предпросмотр админки, miniapp-theme.js) и от 1100 px: слева меню, по центру — лента
   600 px, справа — модели «для вас»; в переписке список чатов — слева от чата; Clips — видео 9:16 по центру. Окно уже 1300 px — без
   правой колонки. На телефоне и в Telegram этот файл ничего не меняет. Прокрутка — как была, у окна; меню и колонки стоят на месте. */
.site-brand,.site-aside,.site-nav-extra{display:none}
@media(min-width:1100px){
  html.web{--rail:248px;--col:600px;--side:340px;--gap:32px;--site:calc(var(--rail) + var(--gap) + var(--col) + var(--gap) + var(--side));--x:max(0px,calc((100vw - var(--site)) / 2));--col-x:calc(var(--x) + var(--rail) + var(--gap))}
  html.web body{padding:0;background:var(--page)}
  html.web .app-shell{max-width:var(--col);margin:0 0 0 var(--col-x);border-radius:0;overflow:visible;overflow-x:clip;min-height:var(--vh);box-shadow:none}

  /* Меню слева */
  html.web .bottom-nav,html.web .app-shell[data-page=chat] .bottom-nav{display:flex;flex-direction:column;align-items:stretch;gap:4px;top:0;bottom:0;left:var(--x);transform:none;width:var(--rail);max-width:none;padding:20px 12px;border-radius:0;background:var(--page);box-shadow:inset -.5px 0 0 var(--hair)}
  html.web .site-brand{display:flex;align-items:center;gap:10px;margin-bottom:16px;padding:6px 14px;border-radius:14px;font-weight:800;font-size:22px;line-height:28px;color:var(--ink);text-decoration:none;cursor:pointer}
  html.web .site-brand img{width:34px;height:34px}
  html.web .nav-button,html.web .site-nav-extra{position:relative;flex:none;display:flex;align-items:center;flex-direction:row;justify-content:flex-start;gap:16px;min-height:52px;padding:0 14px;border-radius:14px;font-size:17px;line-height:22px;font-weight:600;color:var(--ink)}
  html.web .nav-button svg,html.web .site-nav-extra svg{width:26px;height:26px;flex:none}
  /* Уведомления — последним пунктом меню (на телефоне — колокольчик в шапке ленты) */
  html.web .site-nav-extra{order:1}
  html.web .site-nav-extra .notification-dot{position:absolute;left:34px;top:14px;width:9px;height:9px;border-radius:50%;background:#e8365d}
  html.web .nav-button.active{background:var(--fill);color:var(--accent)}
  html.web .nav-badge{position:static;margin-left:auto;border:0}
  html.web .app-header{padding-top:0}
  /* Шапка ленты не нужна: «FanSecret» и уведомления — в меню слева, вкладки ленты — сверху */
  html.web .app-shell[data-page=feed] .app-header{display:none}

  /* Правая колонка: модели «для вас» */
  html.web .site-aside{display:block;position:fixed;z-index:5;top:0;bottom:0;left:calc(var(--col-x) + var(--col) + var(--gap));width:var(--side);overflow-y:auto;padding:24px 4px;scrollbar-width:none;color:var(--ink)}
  html.web .site-aside:empty{display:none}
  html.web .site-aside-title{margin:0 0 6px;padding:0 12px;font-size:18px;line-height:24px;font-weight:800}
  html.web .site-people .person-row{padding:10px 12px;border-radius:14px}
  html.web .site-people .person-copy{flex:1;min-width:0}
  html.web .site-people .person-copy p{margin:2px 0 0;color:var(--muted);font-size:14px}
  html.web .site-people .primary-button.small{flex:none;min-height:36px;padding:0 16px;border-radius:18px;font-size:14px}
  html.web .site-aside-note{margin:18px 12px 0;color:var(--muted);font-size:13px}

  /* Переписка: список чатов — слева от чата */
  html.web .app-shell[data-page=chat]{left:calc(var(--col-x) + var(--side) + var(--gap));right:auto;top:0;width:var(--col);max-width:var(--col);height:var(--chat-h,var(--vh));margin:0;border-radius:0;transform:none}
  html.web .app-shell[data-page=chat] .site-aside{left:var(--col-x);padding-top:16px;box-shadow:inset -.5px 0 0 var(--hair)}
  html.web .app-shell[data-page=chat] .chat-composer{bottom:0}
  html.web .site-aside .conversations{padding:4px 4px 20px}
  html.web .site-aside .conversation-row{width:100%;padding:10px 12px;border-radius:14px;text-align:left}
  html.web .site-aside .conversation-row.is-on{background:var(--fill)}
  html.web .chat-page{min-height:calc(var(--vh) - var(--head,67px))}

  /* Clips: видео 9:16 по центру колонки, во весь рост окна */
  html.web .clips-page{--clip-h:calc(var(--vh) - var(--head,67px) - 24px);height:var(--clip-h);width:min(100%,calc(var(--clip-h) * 9 / 16));margin:0 auto 24px;border-radius:18px}

  /* Ленты и страницы — без лишних полей у краёв колонки */
  html.web .feed{padding:16px 0}
  html.web .post-photo{max-height:640px}

  @media(hover:hover){
    html.web .site-brand:hover{opacity:.8}html.web .site-account-me:hover{background:var(--fill)}
    html.web .nav-button:not(.active):hover,html.web .site-nav-extra:hover,html.web .site-aside .conversation-row:not(.is-on):hover,html.web .site-people .person-row:hover{background:var(--fill)}
  }
}
/* Окно 1100–1299 px: без правой колонки, лента — посередине между меню и краем (в переписке список чатов остаётся). */
@media(min-width:1100px) and (max-width:1299px){
  html.web{--x:0px;--col-x:calc(var(--rail) + (100vw - var(--rail) - var(--col)) / 2)}
  html.web .app-shell:not([data-page=chat]) .site-aside{display:none}
  html.web .app-shell[data-page=chat]{left:calc(var(--rail) + var(--gap) + var(--side) + var(--gap));width:min(var(--col),calc(100vw - var(--rail) - var(--side) - 3 * var(--gap)))}
  html.web .app-shell[data-page=chat] .site-aside{left:calc(var(--rail) + var(--gap))}
}
/* Вход через Telegram на сайте (в чате вместо тестового диалога) и подтверждение кодом в приложении — на любой ширине. */
.site-signin{display:grid;justify-items:center;gap:12px;text-align:center}
.site-signin p{margin:0}
.site-signin .primary-button{display:inline-flex;align-items:center;justify-content:center;text-decoration:none}
.signin-code{padding:4px 12px;border:0;border-radius:12px;background:none;font:inherit;font-size:34px;line-height:40px;letter-spacing:6px;font-weight:800;color:var(--ink);cursor:pointer;user-select:all;-webkit-user-select:all}
.signin-code:hover{background:var(--fill)}.code-gap{display:inline-block;width:.4em}
.signin-wait{color:var(--muted);font-size:14px}
.signin-error,.approve-error{color:#e8365d}
.approve-code{display:block;width:100%;height:56px;margin:14px 0;border:0;border-radius:14px;background:var(--fill);color:var(--ink);font-size:28px;font-weight:800;letter-spacing:8px;text-align:center}
.approve-error{min-height:22px;margin:10px 0 0;font-size:15px}
@media(min-width:1100px){
  html.web .site-account{order:2;margin-top:auto;display:flex;align-items:center;gap:12px;padding:14px 14px 4px;box-shadow:inset 0 .5px 0 var(--hair);color:var(--ink)}
  html.web .site-account-me{display:flex;align-items:center;gap:12px;width:calc(100% + 16px);min-width:0;margin:0 -8px;padding:8px;border:0;border-radius:14px;background:none;color:inherit;font:inherit;text-align:left;cursor:pointer}
  html.web .site-account-avatar{flex:none;width:40px;height:40px}
  html.web .site-account-name{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;font-weight:700;overflow-wrap:anywhere}
  html.web .site-account-copy small{color:var(--muted);font-size:13px;line-height:17px}
  html.web .site-account-avatar svg{width:22px;height:22px}
  html.web .site-account-copy{display:grid;gap:2px;min-width:0}
  html.web .site-account .site-signin-button{flex:1}
  html.web .site-account:has(.site-signin-hint){flex-direction:column;align-items:stretch;gap:8px}
  html.web .site-signin-hint{margin:0;color:var(--muted);font-size:13px;line-height:17px}
  html.web .site-signin-button{display:flex;align-items:center;gap:12px;min-height:48px;padding:0 14px;border-radius:14px;background:var(--accent);color:#fff;font-weight:700}
  html.web .site-signin-button svg{width:22px;height:22px}
}
.legal-note{margin:4px 0 0;color:var(--muted);font-size:12px;line-height:16px}
.legal-note a,.site-aside-note a{color:inherit;text-decoration:underline}
/* Карточка «Войти через Telegram» сверху ленты на сайте (без входа) — на любой ширине. */
.web-signin-wrap{padding-top:12px}.web-signin-wrap .push-card{margin-top:0}
.web-signin-card .push-on{white-space:nowrap}
@media(min-width:1100px){html.web .web-signin-card{margin:0 0 4px}}
/* Страница модели на сайте (Макс 2026-10-24: «с версии для сайта убрать кнопки 1 и 2, 3 оставить»): без «назад» (меню слева) и без
   подарка в шапке; «⋯» — на месте. */
@media(min-width:1100px){
  html.web .app-shell[data-page=creator] #header [data-action="back"]{visibility:hidden}
  html.web .app-shell[data-page=creator] #header [data-action^="gift:"]{display:none}
}
/* Профиль без входа — «Войти через Telegram» (Макс 2026-10-26); «Sign out» — внизу профиля. */
.profile-signin{min-height:40vh}
.profile-signin.site-signin{max-width:none;margin:24px 16px;padding:32px 24px;border-radius:20px;background:var(--card)}
.profile-signin.site-signin>p{max-width:420px}
.profile-signin .user-avatar{width:64px;height:64px}
.profile-signin .user-avatar svg{width:32px;height:32px}
.profile-signin h2{margin:0;font-size:22px}
.profile-signin .primary-button{min-width:240px}
.menu-signout span{color:#e5484d}

