/* Новострой: доработки интерфейса Quantum */
/* убрать служебный раздел «Tools» из меню */
a.sidebar-link-button[href*="tools"]:not([href*="activity"]) { display: none !important; }
/* пробел между заголовками «Размер» и «Последнее изменение» */
.listing-item-header .size { margin-right: .8em !important; }
.listing-item-header { column-gap: .8em; }

/* индикатор «Подождите…» (см. ru-quantum.js) */
#novo-busy { position: fixed; inset: 0; z-index: 2147483000; display: none; align-items: center; justify-content: center;
  background: rgba(0,0,0,.18); cursor: progress; }
#novo-busy.on { display: flex; }
#novo-busy .novo-busy-card { display: flex; align-items: center; gap: .8em; padding: 1em 1.4em; border-radius: 14px;
  background: #fff; color: #222; font: 500 16px/1.2 Roboto, system-ui, sans-serif; box-shadow: 0 6px 24px rgba(0,0,0,.25); }
#novo-busy .novo-busy-spin { width: 22px; height: 22px; border-radius: 50%; border: 3px solid #cfe3fb; border-top-color: #2196f3;
  animation: novo-spin .8s linear infinite; }
@keyframes novo-spin { to { transform: rotate(360deg); } }
@media (prefers-color-scheme: dark) { #novo-busy .novo-busy-card { background: #263238; color: #eee; } }

/* ---------- кнопка «Доступ» и окно (см. ru-access.js) ---------- */
#novo-access-btn { position: fixed; top: 74px; right: 22px; z-index: 900; display: none; align-items: center; gap: 6px;
  background: #2196f3; color: #fff; border: 0; border-radius: 20px; padding: 9px 16px; font: 600 15px Roboto, Arial, sans-serif;
  box-shadow: 0 2px 8px rgba(33,150,243,.45); cursor: pointer; }
#novo-access-btn.on { display: flex; }
#novo-access-btn small { font-weight: 400; opacity: .85; }
#novo-access-btn:hover { background: #1e88e5; }
#novo-access { position: fixed; inset: 0; z-index: 2147482000; background: rgba(0,0,0,.35); display: flex; align-items: flex-start; justify-content: center; overflow: auto; padding: 40px 12px; }
#novo-access .na-card { position: relative; width: 700px; max-width: 100%; background: #fff; color: #222; border-radius: 16px; box-shadow: 0 10px 40px rgba(0,0,0,.35);
  padding: 20px 24px; font: 15px/1.4 Roboto, Arial, sans-serif; }
#novo-access h3 { margin: 0 40px 0 0; font-size: 20px; }
#novo-access .na-sub { color: #6b7785; margin: 2px 0 14px; }
#novo-access .na-x { position: absolute; right: 16px; top: 14px; width: 32px; height: 32px; border: 0; border-radius: 50%; background: #eef1f5; cursor: pointer; font-size: 15px; }
#novo-access .na-tabs { display: flex; gap: 6px; margin-bottom: 14px; }
#novo-access .na-tabs span { padding: 6px 14px; border-radius: 16px; background: #eef1f5; cursor: pointer; font-size: 14px; }
#novo-access .na-tabs span.on { background: #2196f3; color: #fff; }
#novo-access .na-mode { display: flex; gap: 10px; margin-bottom: 12px; }
#novo-access .na-mode label { flex: 1; border: 2px solid #dde2e8; border-radius: 10px; padding: 8px 12px; cursor: pointer; }
#novo-access .na-mode label.on { border-color: #2196f3; background: #f3f9ff; }
#novo-access .na-mode input { margin: 0 6px 0 0; }
#novo-access .na-mode b { font-size: 15px; } #novo-access .na-mode small { display: block; color: #6b7785; font-size: 12.5px; margin-top: 2px; }
#novo-access table { width: 100%; border-collapse: collapse; }
#novo-access th { text-align: left; font-size: 12px; color: #6b7785; font-weight: 500; padding: 5px 8px; border-bottom: 1px solid #e6e9ee; }
#novo-access td { padding: 7px 8px; border-bottom: 1px solid #f0f2f5; vertical-align: middle; }
#novo-access td a { color: #1976d2; }
#novo-access input[type=checkbox] { width: 19px; height: 19px; cursor: pointer; accent-color: #2196f3; }
#novo-access .na-login { color: #9aa5b1; font-size: 12px; margin-left: 4px; }
#novo-access .na-pill { font-size: 12px; padding: 2px 9px; border-radius: 10px; white-space: nowrap; }
#novo-access .na-pill.edit { background: #e6f4ea; color: #1e7b34; } #novo-access .na-pill.view { background: #eef1f5; color: #4b5866; } #novo-access .na-pill.adm { background: #fff3cd; color: #7a5b00; }
#novo-access .na-note { color: #6b7785; font-size: 12.5px; margin-top: 10px; }
#novo-access .na-bar { display: flex; justify-content: flex-end; gap: 10px; margin-top: 14px; }
#novo-access .na-bar button { border: 0; border-radius: 9px; padding: 9px 18px; font: 600 15px Roboto, Arial, sans-serif; cursor: pointer; }
#novo-access .na-cancel { background: #eef1f5; } #novo-access .na-save { background: #2196f3; color: #fff; } #novo-access .na-save:disabled { opacity: .6; }
#novo-access .na-ok { padding: 18px 4px; font-size: 16px; color: #1e7b34; } #novo-access .na-err { padding: 12px; background: #fdecea; color: #a12622; border-radius: 8px; }
@media (max-width: 736px) {
  #novo-access-btn { top: auto; bottom: 74px; right: 14px; }
  #novo-access { padding: 10px 6px; } #novo-access .na-card { padding: 16px 14px; }
  #novo-access .na-mode { flex-direction: column; }
  #novo-access .na-pill { white-space: normal; }
}
/* выбор «Может» и подтверждение паролем */
#novo-access select { font: 14px Roboto, Arial, sans-serif; padding: 5px 8px; border: 1px solid #c8d1db; border-radius: 8px; background: #fff; color: #222; max-width: 100%; }
#novo-access tr.na-none td:nth-child(2) { color: #9aa5b1; }
#novo-access .na-pwrow { display: none; margin-top: 12px; padding: 10px 12px; background: #fff8e1; border-radius: 8px; font-size: 14px; }
#novo-access .na-pwrow.on { display: block; }
#novo-access .na-pwrow.need { background: #fdecea; }
#novo-access .na-pw { margin-left: 6px; padding: 6px 10px; border: 1px solid #c8d1db; border-radius: 8px; font-size: 14px; width: 190px; }
@media (max-width: 736px) { #novo-access .na-pw { display: block; margin: 8px 0 0; width: 100%; } #novo-access select { font-size: 13px; } }
#novo-access .na-warn { margin-bottom: 12px; padding: 10px 12px; background: #fff8e1; border-radius: 8px; font-size: 14px; color: #5f4b00; }
#novo-access .na-tabs { flex-wrap: wrap; }
