/* 27.10.2026: табели в Android-приложении (html.lion-apk ставит apk-mode.js по UA LionCRMAndroid).
   Приложение показывает CRM по ширине телефона, поэтому таблицы табелей — карточками.
   Только раскладка: разметка, поля, кнопки и обработчики те же. Браузер телефона и компьютер не затронуты.
   :not(#lion-apk) поднимает вес правил над правилами темы «Банкнота» для тех же таблиц. */
@media screen and (max-width: 760px) {
  /* общий вид: таблица -> стопка карточек */
  html.lion-apk:not(#lion-apk) :is(.lion-ts-list, .hr-editor, .lion-ts-sum) { max-height: none; overflow: visible; border: 0; border-radius: 0; }
  html.lion-apk:not(#lion-apk) :is(.lion-ts-list, .hr-editor, .lion-ts-sum) > table { display: block; width: 100%; min-width: 0; border: 0; }
  html.lion-apk:not(#lion-apk) :is(.lion-ts-list, .hr-editor, .lion-ts-sum) > table > thead { display: none; }
  html.lion-apk:not(#lion-apk) :is(.lion-ts-list, .hr-editor, .lion-ts-sum) > table > tbody { display: block; }
  html.lion-apk:not(#lion-apk) :is(.lion-ts-list, .hr-editor, .lion-ts-sum) > table > tbody > tr { display: flex; flex-wrap: wrap; align-items: flex-start; gap: 12px 8px; margin: 0 0 12px; padding: 14px; border: 1px solid var(--bn-line, #CDD6C8); border-radius: 14px; background: var(--bn-sheet, #fff); }
  html.lion-apk:not(#lion-apk) :is(.lion-ts-list, .hr-editor, .lion-ts-sum) > table > tbody > tr > td { display: block; position: static; min-width: 0; padding: 0; border: 0; background: none; white-space: normal; overflow-wrap: normal; word-break: normal; font-size: 15px; line-height: 1.35; }
  html.lion-apk:not(#lion-apk) :is(.lion-ts-list, .hr-editor, .lion-ts-sum) > table > tbody > tr > td::before { display: block; margin: 0 0 4px; color: var(--bn-muted, #56676A); font-size: 12.5px; font-weight: 600; line-height: 1.2; }
  html.lion-apk:not(#lion-apk) :is(.hr-editor, .lion-ts-sum) :is(input:not([type=checkbox]), select) { box-sizing: border-box; width: 100%; min-width: 0; height: 44px; padding: 0 10px; border: 1px solid var(--bn-line, #CDD6C8); border-radius: 10px; background: var(--bn-sheet, #fff); color: inherit; font-size: 16px; }
  html.lion-apk:not(#lion-apk) :is(.hr-editor, .lion-ts-sum) :is(input:not([type=checkbox]), select):focus { border-color: var(--bn-blue, #2E6FD8); outline: 2px solid rgba(46, 111, 216, .25); }
  html.lion-apk:not(#lion-apk) :is(.hr-editor, .lion-ts-sum) :is(input:not([type=checkbox]), select):disabled { background: var(--bn-paper2, #F8F9F3); }
  /* кнопки над таблицей заполнения */
  html.lion-apk:not(#lion-apk) .row.formsection:has(~ .hr-editor) { flex-wrap: wrap; gap: 8px; }
  html.lion-apk:not(#lion-apk) .row.formsection:has(~ .hr-editor) > button { flex: 1 1 auto; min-height: 44px; }
  html.lion-apk:not(#lion-apk) .row.formsection:has(~ .hr-editor) > :not(button) { flex: 1 1 100%; }

  /* список табелей: объект и сумма сверху, источник и состояние, кнопки */
  html.lion-apk:not(#lion-apk) .lion-ts-list > table > tbody > tr { display: grid; grid-template-columns: auto 1fr auto; grid-template-areas: "obj obj sum" "src st st" "act act act"; gap: 6px 10px; align-items: start; }
  html.lion-apk:not(#lion-apk) .lion-ts-list > table > tbody > tr > td:nth-child(1) { grid-area: obj; font-size: 17px; font-weight: 700; }
  html.lion-apk:not(#lion-apk) .lion-ts-list > table > tbody > tr > td:nth-child(1) .muted { margin: 2px 0 0; font-size: 13px; font-weight: 400; }
  html.lion-apk:not(#lion-apk) .lion-ts-list > table > tbody > tr > td:nth-child(2) { grid-area: src; color: var(--bn-muted, #56676A); font-size: 13.5px; }
  html.lion-apk:not(#lion-apk) .lion-ts-list > table > tbody > tr > td:nth-child(2)::after { content: "·"; margin-left: 10px; }
  html.lion-apk:not(#lion-apk) .lion-ts-list > table > tbody > tr > td:nth-child(3) { grid-area: st; color: var(--bn-muted, #56676A); font-size: 13.5px; }
  html.lion-apk:not(#lion-apk) .lion-ts-list > table > tbody > tr > td:nth-child(4) { grid-area: sum; font-size: 16px; font-weight: 700; white-space: nowrap; text-align: right; }
  html.lion-apk:not(#lion-apk) .lion-ts-list > table > tbody > tr > td:nth-child(5) { grid-area: act; display: flex; flex-wrap: wrap; align-items: center; gap: 8px; padding-top: 6px; }
  html.lion-apk:not(#lion-apk) .lion-ts-list > table > tbody > tr > td:nth-child(5) .muted { flex-basis: 100%; margin: 0; font-size: 12.5px; }
  html.lion-apk:not(#lion-apk) .lion-ts-list td .textbutton.textbutton { height: 40px; margin: 0; padding: 0 14px; font-size: 14.5px; }
  html.lion-apk:not(#lion-apk) .lion-ts-list td .textbutton.textbutton:first-child { flex: 1 1 auto; justify-content: center; border-color: var(--bn-ink, #14324A); background: var(--bn-ink, #14324A); color: #fff; }
  html.lion-apk:not(#lion-apk) .lion-ts-list td .textbutton.textbutton.danger-text { flex: none; width: 40px; height: 40px; margin-left: auto; padding: 0; justify-content: center; font-size: 0; }

  /* заполнение табеля: одна строка работ — одна карточка */
  html.lion-apk:not(#lion-apk) .hr-editor > table > tbody > tr { counter-reset: lion-day; }
  html.lion-apk:not(#lion-apk) .hr-editor > table > tbody > tr > td:first-child { flex: 1 1 100%; display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
  html.lion-apk:not(#lion-apk) .hr-editor > table > tbody > tr > td:first-child > * { margin: 0; }
  html.lion-apk:not(#lion-apk) .hr-editor > table > tbody > tr > td:first-child > :not(.hr-row-number):not(span[style]) { flex: 1 1 100%; }
  html.lion-apk:not(#lion-apk) .hr-editor .hr-row-number { display: inline-flex; align-items: center; justify-content: center; min-width: 32px; height: 32px; border-radius: 16px; background: var(--bn-paper2, #F8F9F3); font-size: 14px; font-weight: 700; }
  html.lion-apk:not(#lion-apk) .hr-editor td:first-child > span[style] { margin-left: auto !important; gap: 6px !important; }
  html.lion-apk:not(#lion-apk) .hr-editor td:first-child > span[style] button { width: 40px; height: 40px; padding: 0; font-size: 18px; }
  html.lion-apk:not(#lion-apk) .hr-editor .hr-check { display: flex; align-items: center; gap: 10px; min-height: 40px; font-size: 14.5px; }
  html.lion-apk:not(#lion-apk) .hr-editor .hr-check input { width: 22px; height: 22px; flex: none; }
  html.lion-apk:not(#lion-apk) .hr-editor .hr-shift-details { font-size: 14.5px; }
  html.lion-apk:not(#lion-apk) .hr-editor > table > tbody > tr > td:is(:nth-child(2), :nth-child(3), :nth-child(4), :nth-child(5), :nth-child(6)) { flex: 1 1 calc(50% - 4px); }
  html.lion-apk:not(#lion-apk) .hr-editor > table > tbody > tr > td:nth-child(2)::before { content: "Оклад, ₽"; }
  html.lion-apk:not(#lion-apk) .hr-editor > table > tbody > tr > td:nth-child(3)::before { content: "Норма дней"; }
  html.lion-apk:not(#lion-apk) .hr-editor > table > tbody > tr > td:nth-child(4)::before { content: "Отработано"; }
  html.lion-apk:not(#lion-apk) .hr-editor > table > tbody > tr > td:nth-child(5)::before { content: "Премия, ₽"; }
  html.lion-apk:not(#lion-apk) .hr-editor > table > tbody > tr > td:nth-child(6)::before { content: "Удержание, ₽"; }
  html.lion-apk:not(#lion-apk) .hr-editor > table > tbody > tr > td small { display: block; margin-top: 3px; color: var(--bn-muted, #56676A); font-size: 12px; }
  html.lion-apk:not(#lion-apk) .hr-editor > table > tbody > tr > td.hr-day { order: 2; flex: 0 0 calc((100% - 48px) / 7); counter-increment: lion-day; text-align: center; }
  html.lion-apk:not(#lion-apk) .hr-editor > table > tbody > tr > td.hr-day::before { content: counter(lion-day); margin: 0 0 2px; font-size: 11.5px; }
  html.lion-apk:not(#lion-apk) .hr-editor > table > tbody > tr > td.hr-day select { height: 40px; padding: 0; -webkit-appearance: none; appearance: none; background-image: none; text-align: center; text-align-last: center; font-size: 15px; font-weight: 600; }
  html.lion-apk:not(#lion-apk) .hr-editor > table > tbody > tr > td.hr-row-total { order: 1; flex: 1 1 calc(50% - 4px); font-size: 18px; }
  html.lion-apk:not(#lion-apk) .hr-editor > table > tbody > tr > td.hr-row-total strong { display: flex; align-items: center; height: 44px; }
  html.lion-apk:not(#lion-apk) .hr-editor > table > tbody > tr > td.hr-row-total::before { content: "Итого по строке"; }
  html.lion-apk:not(#lion-apk) .hr-editor > table > tbody > tr > td:has(> .danger-text) { order: 3; flex: none; margin-left: auto; }
  html.lion-apk:not(#lion-apk) .hr-editor td .textbutton.textbutton.danger-text { width: 44px; height: 44px; padding: 0; justify-content: center; font-size: 0; }

  /* итоги по сотрудникам и начисления по участкам */
  html.lion-apk:not(#lion-apk) .lion-ts-sum > table > tbody > tr > td:first-child { flex: 1 1 100%; font-size: 16px; font-weight: 700; }
  html.lion-apk:not(#lion-apk) .lion-ts-sum > table > tbody > tr > td:first-child .muted { margin: 2px 0 0; font-size: 13px; font-weight: 400; }
  html.lion-apk:not(#lion-apk) .lion-ts-sum > table > tbody > tr > td:not(:first-child) { flex: 1 1 calc(50% - 4px); }
  html.lion-apk:not(#lion-apk) .lion-ts-sum > table > tbody > tr > td:empty { display: none; }
  html.lion-apk:not(#lion-apk) .lion-ts-sum > table > tbody > tr > td .muted { margin: 2px 0 0; font-size: 12.5px; }
  html.lion-apk:not(#lion-apk) .lion-ts-sum > table > tbody > tr > td .textbutton { height: 40px; }
  html.lion-apk:not(#lion-apk) .lion-ts-total4 > table > tbody > tr > td:nth-child(2)::before { content: "Строк работ"; }
  html.lion-apk:not(#lion-apk) .lion-ts-total4 > table > tbody > tr > td:nth-child(3)::before { content: "До округления"; }
  html.lion-apk:not(#lion-apk) .lion-ts-total4 > table > tbody > tr > td:nth-child(4)::before { content: "Итого по табелю"; }
  html.lion-apk:not(#lion-apk) .lion-ts-accrual > table > tbody > tr > td:nth-child(2)::before { content: "Оклад"; }
  html.lion-apk:not(#lion-apk) .lion-ts-accrual > table > tbody > tr > td:nth-child(3)::before { content: "На руки, ₽"; }
  html.lion-apk:not(#lion-apk) .lion-ts-accrual > table > tbody > tr > td:nth-child(4)::before { content: "НДФЛ, ₽"; }
  html.lion-apk:not(#lion-apk) .lion-ts-accrual > table > tbody > tr > td:nth-child(5)::before { content: "Взносы, ₽"; }
  html.lion-apk:not(#lion-apk) .lion-ts-accrual > table > tbody > tr > td:nth-child(6)::before { content: "Статья зарплаты"; }
  html.lion-apk:not(#lion-apk) .lion-ts-person6 > table > tbody > tr > td:nth-child(2)::before { content: "Всего на руки"; }
  html.lion-apk:not(#lion-apk) .lion-ts-person6 > table > tbody > tr > td:nth-child(3)::before { content: "Ранее выдано"; }
  html.lion-apk:not(#lion-apk) .lion-ts-person6 > table > tbody > tr > td:nth-child(4)::before { content: "Официально на руки"; }
  html.lion-apk:not(#lion-apk) .lion-ts-person6 > table > tbody > tr > td:nth-child(5)::before { content: "Официальный НДФЛ"; }
  html.lion-apk:not(#lion-apk) .lion-ts-person6 > table > tbody > tr > td:nth-child(6)::before { content: "Осталось выплатить"; }
}

/* 27.10.2026: кабинет менеджера в Android-приложении (html.lion-apk.lion-apk-manager — ставит apk-mode.js).
   Боковое меню всегда открыто узкой полосой со значками разделов; кнопка ☰ вверху по-прежнему
   открывает полное меню (настройка меню, скачивание, выход). Пункты меню те же, обработчики те же. */
@media screen and (max-width: 760px) {
  html.lion-apk.lion-apk-manager:not(#lion-apk) .shell:not(.mobile-nav-open) { --lion-rail: 52px; }
  html.lion-apk.lion-apk-manager:not(#lion-apk) .shell:not(.mobile-nav-open) > aside.sidebar { display: flex; flex-direction: column; position: fixed; z-index: 30; top: 0; bottom: 0; left: 0; width: var(--lion-rail); min-width: 0; height: auto; margin: 0; padding: 10px 0; overflow: hidden auto; border-radius: 0; box-sizing: border-box; }
  html.lion-apk.lion-apk-manager:not(#lion-apk) .shell:not(.mobile-nav-open) > aside.sidebar > :not(nav) { display: none; }
  html.lion-apk.lion-apk-manager:not(#lion-apk) .shell:not(.mobile-nav-open) > aside.sidebar > nav { display: flex; flex-direction: column; gap: 8px; margin: 0; padding: 0; }
  html.lion-apk.lion-apk-manager:not(#lion-apk) .shell:not(.mobile-nav-open) > aside.sidebar .sidebar-nav-row { display: block; margin: 0; padding: 0; }
  html.lion-apk.lion-apk-manager:not(#lion-apk) .shell:not(.mobile-nav-open) > aside.sidebar .sidebar-nav-row > :not(.navitem) { display: none; }
  html.lion-apk.lion-apk-manager:not(#lion-apk) .shell:not(.mobile-nav-open) > aside.sidebar .navitem { position: relative; display: flex; align-items: center; justify-content: center; width: 44px; height: 44px; min-height: 0; margin: 0 auto; padding: 0; gap: 0; border-radius: 12px; font-size: 0; line-height: 0; }
  html.lion-apk.lion-apk-manager:not(#lion-apk) .shell:not(.mobile-nav-open) > aside.sidebar .navitem::before,
  html.lion-apk.lion-apk-manager:not(#lion-apk) .shell:not(.mobile-nav-open) > aside.sidebar .navitem::after { display: none; }
  html.lion-apk.lion-apk-manager:not(#lion-apk) .shell:not(.mobile-nav-open) > aside.sidebar .navitem svg { width: 24px; height: 24px; flex: none; margin: 0; }
  /* один тёмный цвет с шапкой: полоса и шапка выглядят как рамка приложения */
  html.lion-apk.lion-apk-manager:not(#lion-apk) .shell:not(.mobile-nav-open) > aside.sidebar { padding-top: 4px; background: var(--bn-ink2, #0B2236); box-shadow: none; }
  html.lion-apk.lion-apk-manager:not(#lion-apk) .shell:not(.mobile-nav-open) > aside.sidebar .navitem { border: 0; background: transparent; box-shadow: none; color: rgba(255, 255, 255, .6); }
  html.lion-apk.lion-apk-manager:not(#lion-apk) .shell:not(.mobile-nav-open) > aside.sidebar .navitem.active { background: rgba(255, 255, 255, .14); color: #fff; }
  html.lion-apk.lion-apk-manager:not(#lion-apk) .shell:not(.mobile-nav-open) > aside.sidebar .navitem > :not(svg) { position: absolute; top: 2px; right: 2px; min-width: 16px; height: 16px; padding: 0 4px; border-radius: 8px; font-size: 10px; line-height: 16px; }
  html.lion-apk.lion-apk-manager:not(#lion-apk) .shell:not(.mobile-nav-open) > main.workspace { margin-left: var(--lion-rail); width: auto; min-width: 0; max-width: calc(100vw - var(--lion-rail)); box-sizing: border-box; }
  html.lion-apk.lion-apk-manager:not(#lion-apk) .shell > main.workspace > header.topbar h1 { overflow: hidden; font-size: 22px; line-height: 1.15; white-space: nowrap; text-overflow: ellipsis; }
  html.lion-apk.lion-apk-manager:not(#lion-apk) .shell > main.workspace > header.topbar > div:has(> h1) { flex: 1 1 auto; min-width: 0; }
  /* с полосой ширина меньше: тоньше отступы вокруг карточек табеля */
  html.lion-apk.lion-apk-manager:not(#lion-apk) .shell > main.workspace > section.panel.panelbody:has(> .hr-editor) { padding-left: 8px; padding-right: 8px; }
  html.lion-apk.lion-apk-manager:not(#lion-apk) .shell .hr-editor > table > tbody > tr { padding: 12px 10px; }
}
/* 27.10.2026: кабинет менеджера в Android-приложении — компактная шапка и начальная страница мессенджера.
   Шапка CRM в одну строку высотой 48 px: ☰, название раздела, обновить, колокольчик — значками без рамок.
   Список чатов во всю ширину без рамки карточки; поиск и кнопки «группа / новый чат» в одной строке
   (заголовок «Чаты» скрыт — раздел уже назван в шапке). Разметка и обработчики те же. */
@media screen and (max-width: 760px) {
  html.lion-apk.lion-apk-manager:not(#lion-apk) .shell > main.workspace { padding-top: 0; padding-left: 10px; padding-right: 10px; }
  /* шапка — тёмная полоса приложения, продолжение полосы меню слева; закреплена сверху */
  html.lion-apk.lion-apk-manager:not(#lion-apk) .shell > main.workspace > header.topbar { position: sticky; top: 0; z-index: 25; display: flex; align-items: center; gap: 0; min-height: 52px; margin: 0 -10px 8px; padding: 0 4px 0 2px; border: 0; background: var(--bn-ink2, #0B2236); box-shadow: 0 1px 0 rgba(255, 255, 255, .06), 0 2px 8px rgba(11, 34, 54, .18); }
  html.lion-apk.lion-apk-manager:not(#lion-apk) .shell > main.workspace > header.topbar :is(.mobile-menu-button, .mobile-refresh-button, .message-notification-bell) { display: grid; place-items: center; flex: none; width: 44px; height: 44px; min-width: 0; min-height: 0; padding: 0; border: 0; border-radius: 50%; background: transparent; box-shadow: none; color: rgba(255, 255, 255, .88); transition: none; }
  html.lion-apk.lion-apk-manager:not(#lion-apk) .shell > main.workspace > header.topbar :is(.mobile-menu-button, .mobile-refresh-button, .message-notification-bell):hover { border: 0; background: transparent; }
  html.lion-apk.lion-apk-manager:not(#lion-apk) .shell > main.workspace > header.topbar :is(.mobile-menu-button, .mobile-refresh-button, .message-notification-bell):active { background: rgba(255, 255, 255, .14); }
  html.lion-apk.lion-apk-manager:not(#lion-apk) .shell > main.workspace > header.topbar > .message-notifications { flex: none; margin: 0; }
  html.lion-apk.lion-apk-manager:not(#lion-apk) .shell > main.workspace > header.topbar > div:has(> h1) { padding: 0 4px; }
  html.lion-apk.lion-apk-manager:not(#lion-apk) .shell > main.workspace > header.topbar h1 { margin: 0; color: #fff; font-family: "Golos Text", system-ui, sans-serif; font-size: 18px; font-weight: 600; line-height: 1.2; letter-spacing: 0; }

  /* табели: без пояснения под заголовком раздела */
  html.lion-apk.lion-apk-manager:not(#lion-apk) .shell > main.workspace > .pageheading:has(~ .hr-tabs) .muted { display: none; }

  /* мессенджер: список чатов во всю ширину */
  html.lion-apk.lion-apk-manager:not(#lion-apk) .shell > main.workspace > header.topbar:has(~ .wa) { margin-bottom: 0; }
  html.lion-apk.lion-apk-manager:not(#lion-apk) .shell > main.workspace > .wa { margin: 0 -10px; min-height: calc(100dvh - 60px); border: 0; border-radius: 0; box-shadow: none; }
  html.lion-apk.lion-apk-manager:not(#lion-apk) .shell > main.workspace > .wa > .wa-list { display: grid; grid-template-columns: minmax(0, 1fr) auto; grid-template-rows: auto minmax(0, 1fr); min-height: calc(100dvh - 60px); }
  html.lion-apk.lion-apk-manager:not(#lion-apk) .wa-list > .wa-list-head { display: contents; }
  html.lion-apk.lion-apk-manager:not(#lion-apk) .wa-list > .wa-list-head > h2 { display: none; }
  html.lion-apk.lion-apk-manager:not(#lion-apk) .wa-list > .wa-search { grid-column: 1; grid-row: 1; height: 40px; margin: 6px 4px 8px 10px; border-radius: 20px; }
  html.lion-apk.lion-apk-manager:not(#lion-apk) .wa-list > .wa-search input { font-size: 16px; }
  html.lion-apk.lion-apk-manager:not(#lion-apk) .wa-list > .wa-list-head > .wa-head-actions { grid-column: 2; grid-row: 1; align-self: center; gap: 0; margin: 0 4px 2px 0; }
  html.lion-apk.lion-apk-manager:not(#lion-apk) .wa-list > .wa-chats { grid-column: 1 / -1; grid-row: 2; }
  html.lion-apk.lion-apk-manager:not(#lion-apk) .wa-list > .wa-chats > .wa-chat { padding-left: 10px; }
}

/* 27.10.2026: кнопка «Приложение» (меню APK 0.4.0: обновить страницу, уведомления, обновления).
   Создаёт apk-mode.js только при мосте window.LionApp; у 0.3.0 и в браузере её нет. */
#lion-apk-app { display: none; }
html.lion-apk.lion-apk-manager:not(.lion-apk-drawer) #lion-apk-app { position: fixed; z-index: 31; left: 4px; bottom: 10px; display: grid; place-items: center; width: 44px; height: 44px; min-height: 0; padding: 0; border: 0; border-radius: 12px; background: transparent; box-shadow: none; color: rgba(255, 255, 255, .6); }
html.lion-apk.lion-apk-manager:not(.lion-apk-drawer) #lion-apk-app span { display: none; }
html.lion-apk.lion-apk-drawer #lion-apk-app { position: fixed; z-index: 2000; bottom: 16px; right: 16px; display: inline-flex; align-items: center; gap: 8px; height: 40px; min-height: 0; padding: 0 14px; border: 0; border-radius: 20px; background: #fff; box-shadow: 0 2px 10px rgba(11, 34, 54, .25); color: var(--bn-ink, #14324A); font: 600 14px/1 "Golos Text", system-ui, sans-serif; }
html:has(.wa.wa-open) #lion-apk-app { display: none; }
