.mobile-dock{display:none}
.mobile-more{color:var(--text);background:var(--bg);border:1px solid var(--line);
  border-radius:24px;padding:0;width:min(520px,calc(100% - 24px));max-height:calc(100dvh - 24px - env(safe-area-inset-top));
  position:fixed;inset:auto 0 calc(12px + env(safe-area-inset-bottom));margin:0 auto;box-shadow:var(--shadow)}
.mobile-more::backdrop{background:#14141466;backdrop-filter:blur(4px)}
.mobile-more__head{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:16px 20px;
  position:sticky;top:0;background:var(--bg);z-index:1;border-bottom:1px solid var(--line)}
.mobile-more__head h2{margin:0;font-size:20px}
.mobile-more__body{padding:16px 20px 20px}
.mobile-more__search{display:grid;gap:8px;font-size:13px;color:var(--text2)}
.mobile-more input,.mobile-more select{font:inherit;font-size:16px;color:var(--text);background:var(--raise);
  border:1px solid var(--line);border-radius:10px;min-height:44px;padding:10px 12px;min-width:0;width:100%}
.mobile-more__results .results{position:static;max-height:280px;margin-top:8px;box-shadow:none}
.mobile-more__places{display:flex;gap:8px;flex-wrap:wrap;padding:18px 0 12px}
.mobile-more__places button{flex:1;padding:0 12px}
.mobile-more__places [aria-pressed=true]{color:var(--bg);background:var(--text);border-color:var(--text)}
.mobile-more__sections{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:12px 0 20px}
.mobile-more__sections button{border:1px solid var(--line);border-radius:10px;background:var(--raise);
  color:var(--text);font:inherit;font-size:14px;text-align:left;min-height:48px;padding:10px 12px;cursor:pointer}
.mobile-more__sections [aria-current=page]{border-color:var(--text);color:var(--bg);background:var(--text)}
.mobile-more__settings{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding-top:16px;border-top:1px solid var(--line)}
.mobile-more__settings label{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:12px}
.mobile-more__settings select{width:auto;min-width:140px}
.mobile-more__settings button{font-size:13px;padding:8px}
.mobile-more__user{font-size:13px;color:var(--text2);margin-top:18px}
.mobile-more :is(button,input,select):focus-visible{outline:2px solid var(--accent);outline-offset:2px}
@media(max-width:980px){
  :root{--mobile-dock-space:calc(70px + env(safe-area-inset-bottom))}
  html{scrollbar-gutter:auto}
  .app{grid-template-columns:1fr;height:100dvh;overflow:hidden}
  .app>.side,.main>.top{display:none}
  .main{height:100dvh;min-height:0;overflow:hidden}
  /* ⚠️ `:root.crm-app` — НЕ украшение, а вес (п. 313, 02.11.2026).
     `crm_dense.css` подключён ПОЗЖЕ и объявляет `.screen{padding:12px}`
     без media: специфичность та же (0,1,0), и порядок файлов перебивал
     мобильный отступ. Замерено на 360 и 390 px: снизу было 12px вместо
     запаса под док, сверху 12px вместо 16 + safe-area, и последний
     элемент длинного списка уходил ПОД док на 48 px. Селектор из двух
     частей (0,2,0) делает правило независимым от порядка подключения. */
  /* Кружок цифры — НА иконке, одинаково у всех кнопок дока (п. 314).
     ⚠️ Прежде позиция была только у кружка диалогов (в crm_dialogs.css),
     а кружок задач ложился строчным элементом ПОД иконкой: замерено на
     360 и 390 px — сверху 40 px вместо 3, справа 11/13/15/18 вместо 1,
     то есть место разное у разных ролей и ширин.
     ⚠️ Селектор из трёх частей (0,3,0) — чтобы правило не зависело от
     порядка подключения файлов (тот же урок, что в п. 313). */
  :root.crm-app .mobile-dock [data-dialog-badge],
  :root.crm-app .mobile-dock [data-task-badge]{
    position:absolute;top:3px;right:1px;margin:0;z-index:3;pointer-events:none}

  :root.crm-app .screen{padding:calc(16px + env(safe-area-inset-top)) 12px var(--mobile-dock-space);overflow:auto;scrollbar-gutter:auto}
  .screen:has(>.dialogs),.screen:has(>.listing-editor-page){display:flex;flex-direction:column;overflow:hidden}
  .screen:has(>.dialogs)>.h1row,.screen:has(>.listing-editor-page)>.h1row{flex:none}
  .screen>.dialogs,.screen>.listing-editor-page{flex:1;min-height:0;height:auto}
  .screen>.dialogs{border-radius:16px}
  .screen h1{font-size:22px}
  .mobile-dock{display:flex;align-items:stretch;position:fixed;z-index:35;left:50%;
    bottom:calc(8px + env(safe-area-inset-bottom));transform:translateX(-50%);
    width:calc(100% - 16px);max-width:520px;height:52px;padding:5px;gap:1px;
    border:1px solid color-mix(in srgb,var(--text2) 30%,var(--line));border-radius:999px;
    background:color-mix(in srgb,var(--raise) 94%,transparent);backdrop-filter:blur(18px);
    box-shadow:0 3px 14px #00000012,inset 0 1px 0 color-mix(in srgb,var(--bg) 75%,transparent);
    isolation:isolate;touch-action:pan-y;user-select:none;overflow:hidden}
  .mobile-dock button{position:relative;z-index:1;flex:1 1 auto;min-width:0;
    font:inherit;font-size:clamp(10px,2.8vw,12px);font-weight:500;color:var(--text2);
    padding:0 5px;border:0;background:transparent;border-radius:999px;cursor:pointer;
    -webkit-tap-highlight-color:transparent;white-space:nowrap}
  .mobile-dock__face{display:flex;align-items:center;justify-content:center;gap:4px;height:100%}
  .mobile-dock__face>svg{width:16px;height:16px;flex:none}
  .mobile-dock__face--lit{position:absolute;inset:0;color:var(--bg);pointer-events:none;
    clip-path:inset(0 var(--lit-right,100%) 0 var(--lit-left,0))}
  .mobile-dock button:focus-visible{outline:2px solid var(--text2);outline-offset:-2px}
  .mobile-dock__pill{position:absolute;z-index:0;left:0;top:5px;height:40px;border-radius:999px;
    background:var(--text);pointer-events:none;will-change:transform,width;
    box-shadow:inset 0 1px 0 color-mix(in srgb,var(--bg) 12%,transparent)}
  .card{padding:16px}.tablewrap{margin:0 -12px}
  .lead__body{grid-template-columns:minmax(0,1fr)}
}
@media(max-width:360px){
  .mobile-dock button{padding:0 3px}.mobile-dock__face{gap:3px}.mobile-dock__face>svg{width:14px;height:14px}
}
@media(prefers-reduced-motion:reduce){
  .mobile-dock__pill{will-change:auto}
}
