@charset "UTF-8";
/* Календарь 1С сотрудника «Сферы» (03.11.2026, cal1c-ui.js, docs/ПЛАН-розница.md этап 5): вкладки «Замеры», «Монтажи»,
   «Бригады», отборы и строка источника данных. Сетка месяца и строки дня - классы календаря дилера (cal.css), здесь только
   свое окно #dlgCal1c (класс c1): календарь дилера от этих правил не меняется. Телефонные медиазапросы - как в style.css. */
.dlg.cal.c1 { width: min(780px, 96vw); }
.c1 .cal-d { aspect-ratio: auto; height: 46px; min-height: 0; } /* окно шире календаря дилера: квадратные клетки вышли бы по 100 px */
.c1-tabs { display: inline-flex; margin-bottom: 10px; border: 1px solid var(--line); border-radius: 999px; overflow: hidden; background: var(--surface2); }
.c1-tab { padding: 7px 16px; border: 0; background: transparent; color: var(--muted); font: inherit; font-weight: 700; cursor: pointer; -webkit-tap-highlight-color: transparent; }
.c1-tab.on { background: var(--accent-soft); color: var(--text); }
.c1-bar { display: flex; flex-wrap: wrap; align-items: flex-end; gap: 8px 12px; margin-bottom: 8px; }
.c1-bar label { display: flex; flex-direction: column; gap: 3px; min-width: 0; font-size: 12px; color: var(--muted); }
.c1-bar select { max-width: 260px; }
.c1-bar .c1-mine { flex-direction: row; align-items: center; gap: 6px; padding-bottom: 6px; font-size: 14px; color: var(--text); }
.c1-src { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 6px; margin-bottom: 10px; font-size: 12px; color: var(--muted); }
.c1-src .err { color: var(--err); }
.c1-src .btn { flex: none; }
.c1-wait { color: var(--accent-ink, var(--accent)); font-weight: 700; }
.c1-trial { padding: 1px 8px; border-radius: 999px; background: var(--warn, #b7791f); color: var(--on-warn, #fff); font-weight: 700; }
.c1 .cal-t small { display: block; font-weight: 600; color: var(--muted); }
.c1-cli { font-weight: 600; }
.c1-row { flex-wrap: wrap; gap: 6px 10px; }
.c1-state { padding: 1px 8px; border: 1px solid var(--line); border-radius: 999px; font-size: 12px; color: var(--muted); }
.c1-dep, .c1-ord { font-size: 12px; color: var(--muted); }
.c1-note { margin-top: 4px; font-size: 12px; color: var(--muted); overflow-wrap: anywhere; }
.c1-people { margin-top: 2px; font-size: 13px; color: var(--muted); }
.c1-none { color: var(--dim); font-style: italic; }
.c1-zp { margin-top: 4px; font-size: 13px; }
.c1-alert { margin-top: 6px; font-size: 13px; font-weight: 600; color: var(--warn, #b7791f); }
.cal-it.c1-warn { border-left-color: var(--warn, #b7791f); }
/* «Бригады»: бригады x 14 дней; прокрутка - внутри таблицы, страница по ширине не прокручивается */
.c1-wrap { overflow-x: auto; margin: 0 -4px; padding: 0 4px 4px; -webkit-overflow-scrolling: touch; }
.c1-crews { border-collapse: separate; border-spacing: 2px; font-size: 12px; }
.c1-crews th, .c1-crews td { padding: 0; text-align: center; font-weight: 600; }
.c1-crews thead th { padding: 2px 3px 4px; color: var(--muted); font-size: 11px; line-height: 1.25; }
.c1-crews thead th.we, .c1-crews td.we .c1-cell { color: var(--err); }
.c1-crews thead th.now { color: var(--accent-ink, var(--accent)); }
.c1-crews tbody th { position: sticky; left: 0; z-index: 1; min-width: 120px; max-width: 170px; padding: 4px 8px 4px 2px; background: var(--surface); text-align: left; }
.c1-crew { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.c1-crew-p { overflow: hidden; color: var(--muted); font-size: 11px; font-weight: 400; text-overflow: ellipsis; white-space: nowrap; }
.c1-links input { width: 44px; padding: 4px; text-align: center; }
.c1-cell { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 2px; width: 36px; min-height: 36px; padding: 3px 2px;
  border: 1px solid transparent; border-radius: 8px; background: var(--surface2); color: var(--text); font: inherit; cursor: pointer; -webkit-tap-highlight-color: transparent; }
@media (hover: hover) { .c1-cell:hover { border-color: var(--accent-line); } }
.c1-crews td.now .c1-cell { border-color: var(--accent-line); }
.c1-cell b { font-size: 11px; line-height: 1; }
.c1-seg { display: flex; gap: 2px; }
.c1-seg i, .c1-legend i { display: inline-block; width: 8px; height: 10px; border-radius: 2px; }
.c1-seg i.f, .c1-legend i.f { background: var(--surface); border: 1px solid var(--line); }
.c1-seg i.p, .c1-legend i.p { background: var(--accent-soft); border: 1px solid var(--accent-line); }
.c1-seg i.b, .c1-legend i.b { background: var(--accent); border: 1px solid var(--accent); }
.c1-seg i.o, .c1-legend i.o { background: var(--err); border: 1px solid var(--err); }
.c1-crew-l { color: var(--muted); font-size: 11px; font-weight: 400; white-space: nowrap; }
.c1-crew-l b { color: var(--text); }
.c1-crews thead th:first-child { text-align: left; }
.c1-tot { color: var(--muted); }
.c1-legend { display: flex; flex-wrap: wrap; gap: 4px 14px; margin: 8px 0 4px; font-size: 12px; color: var(--muted); }
.c1-legend span { display: inline-flex; align-items: center; gap: 5px; }
/* запись в 1С (04.11.2026): кнопки карточки, форма, итог записи, новый документ по заказу из ссылки CRM */
.c1-acts { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 8px; }
.c1-form { margin-top: 8px; padding: 10px; border: 1px solid var(--line); border-radius: 10px; background: var(--surface2); }
.c1-form-h { margin-bottom: 8px; font-weight: 700; }
.c1-form-f { display: flex; flex-wrap: wrap; align-items: flex-end; gap: 8px 10px; }
.c1-form-f label { display: flex; flex-direction: column; gap: 3px; min-width: 0; font-size: 12px; color: var(--muted); }
.c1-form-f label.wide { flex: 1 1 100%; }
.c1-form-f input[type="date"] { width: 150px; }
.c1-form-f input[type="time"] { width: 100px; }
.c1-form-f select, .c1-form-f input[type="text"] { width: 100%; }
.c1-form .hint { margin-top: 6px; }
.c1-form-b { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 10px; }
.c1-alert.err { color: var(--err); }
.c1-done { position: relative; margin-bottom: 10px; padding: 8px 44px 8px 10px; border: 1px solid var(--accent-line); border-radius: 10px; background: var(--accent-soft); font-size: 13px; overflow-wrap: anywhere; }
.c1-done > .btn { position: absolute; top: 4px; right: 4px; }
.c1-new { margin-bottom: 10px; padding: 8px 10px; border: 1px dashed var(--accent-line); border-radius: 10px; font-size: 13px; }
.c1-new .c1-form { margin-top: 0; padding: 0; border: 0; background: transparent; }
@media (max-width: 520px), screen and (pointer: coarse) and (max-device-width: 520px), screen and (pointer: coarse) and (max-device-height: 520px) {
  .c1-form-f label:not(.wide) { flex: 1 1 130px; }
  .c1-form-f input[type="date"], .c1-form-f input[type="time"] { width: 100%; }
  .c1-tabs { display: flex; }
  .c1-tab { flex: 1 1 0; padding: 8px 6px; }
  .c1-bar label:not(.c1-mine) { flex: 1 1 140px; }
  .c1-bar select { max-width: none; width: 100%; }
  .c1-crews tbody th { min-width: 96px; max-width: 120px; }
}
