/* GALSA — визуальный стиль apple.com + iOS 27 «Liquid Glass»:
   полупрозрачные материалы с тёмной кромкой и бликом, крупная типографика,
   кнопки-«пилюли», сгруппированные списки как в Настройках iOS. */

:root {
  --font: -apple-system, BlinkMacSystemFont, "SF Pro Text", "SF Pro Display", "Helvetica Neue", "Segoe UI", Roboto, Arial, sans-serif;
  --bg: #f5f5f7;
  --card: #ffffff;
  --text: #1d1d1f;
  --text-2: #6e6e73;
  --text-3: #86868b;
  --sep: rgba(60, 60, 67, .13);
  --fill: rgba(120, 120, 128, .12);
  --fill-2: rgba(120, 120, 128, .07);
  --blue: #0071e3;
  --blue-soft: rgba(0, 113, 227, .11);
  --green: #34c759;
  --orange: #ff9500;
  --red: #ff3b30;
  --purple: #af52de;
  --indigo: #5856d6;
  --gray: #8e8e93;
  /* Стекло: прозрачность меняется ползунком в Настройках (как в iOS 27) */
  --glass-alpha: .62;
  --glass-rgb: 255, 255, 255;
  --glass-edge: rgba(0, 0, 0, .07);
  --glass-hi: rgba(255, 255, 255, .9);
  --glass-border: rgba(255, 255, 255, .55);
  --shadow: 0 1px 2px rgba(0, 0, 0, .04), 0 10px 30px rgba(0, 0, 0, .07);
  --shadow-lg: 0 2px 6px rgba(0, 0, 0, .06), 0 24px 60px rgba(0, 0, 0, .16);
  --blob-1: rgba(0, 113, 227, .16);
  --blob-2: rgba(48, 176, 199, .16);
  --blob-3: rgba(88, 86, 214, .10);
  color-scheme: light;
}

:root[data-theme="dark"] {
  --bg: #000000;
  --card: #1c1c1e;
  --text: #f5f5f7;
  --text-2: #a1a1a6;
  --text-3: #6e6e73;
  --sep: rgba(84, 84, 88, .45);
  --fill: rgba(120, 120, 128, .26);
  --fill-2: rgba(120, 120, 128, .14);
  --blue: #2997ff;
  --blue-soft: rgba(41, 151, 255, .18);
  --glass-rgb: 36, 36, 40;
  --glass-edge: rgba(0, 0, 0, .55);
  --glass-hi: rgba(255, 255, 255, .16);
  --glass-border: rgba(255, 255, 255, .10);
  --shadow: 0 1px 2px rgba(0, 0, 0, .4), 0 10px 30px rgba(0, 0, 0, .4);
  --shadow-lg: 0 24px 60px rgba(0, 0, 0, .6);
  --blob-1: rgba(41, 151, 255, .20);
  --blob-2: rgba(48, 176, 199, .14);
  --blob-3: rgba(94, 92, 230, .16);
  color-scheme: dark;
}

@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) {
    --bg: #000000;
    --card: #1c1c1e;
    --text: #f5f5f7;
    --text-2: #a1a1a6;
    --text-3: #6e6e73;
    --sep: rgba(84, 84, 88, .45);
    --fill: rgba(120, 120, 128, .26);
    --fill-2: rgba(120, 120, 128, .14);
    --blue: #2997ff;
    --blue-soft: rgba(41, 151, 255, .18);
    --glass-rgb: 36, 36, 40;
    --glass-edge: rgba(0, 0, 0, .55);
    --glass-hi: rgba(255, 255, 255, .16);
    --glass-border: rgba(255, 255, 255, .10);
    --shadow: 0 1px 2px rgba(0, 0, 0, .4), 0 10px 30px rgba(0, 0, 0, .4);
    --shadow-lg: 0 24px 60px rgba(0, 0, 0, .6);
    --blob-1: rgba(41, 151, 255, .20);
    --blob-2: rgba(48, 176, 199, .14);
    --blob-3: rgba(94, 92, 230, .16);
    color-scheme: dark;
  }
}

* { box-sizing: border-box; }
html, body { margin: 0; }
body {
  font-family: var(--font);
  font-size: 15px;
  line-height: 1.4;
  color: var(--text);
  background: var(--bg);
  -webkit-font-smoothing: antialiased;
  letter-spacing: -.01em;
}
button, input, select, textarea { font: inherit; color: inherit; letter-spacing: inherit; }
button { cursor: pointer; }
a { color: var(--blue); text-decoration: none; }
a:hover { text-decoration: underline; }
[hidden] { display: none !important; }

/* Фон: мягкие «морские» пятна, чтобы стекло было видно */
.backdrop {
  position: fixed; inset: 0; z-index: -1; pointer-events: none;
  background:
    radial-gradient(50vw 50vw at 8% 0%, var(--blob-1), transparent 60%),
    radial-gradient(45vw 45vw at 100% 18%, var(--blob-2), transparent 60%),
    radial-gradient(60vw 40vw at 60% 110%, var(--blob-3), transparent 60%),
    var(--bg);
}

/* ─── Стекло ─────────────────────────────────────────────────────────────── */
.glass {
  background: rgba(var(--glass-rgb), var(--glass-alpha));
  -webkit-backdrop-filter: blur(28px) saturate(185%);
  backdrop-filter: blur(28px) saturate(185%);
  border: 1px solid var(--glass-border);
  box-shadow:
    inset 0 1px 0 var(--glass-hi),          /* блик сверху */
    inset 0 0 0 .5px var(--glass-edge),     /* тёмная кромка iOS 27 */
    var(--shadow);
}
.glass-strong { --glass-alpha: .86; }

/* ─── Каркас ─────────────────────────────────────────────────────────────── */
.app { display: grid; grid-template-columns: var(--sidebar-w, 276px) minmax(0, 1fr); min-height: 100vh; }

.sidebar {
  position: sticky; top: 12px; margin: 12px 0 12px 12px;
  height: calc(100vh - 24px); border-radius: 28px;
  padding: 18px 12px; display: flex; flex-direction: column; gap: 4px;
}
.brand { display: flex; align-items: center; gap: 10px; padding: 4px 10px 16px; }
.brand-logo {
  width: 34px; height: 34px; border-radius: 10px; display: grid; place-items: center;
  background: linear-gradient(145deg, #0a84ff, #30b0c7); color: #fff;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .5), 0 4px 12px rgba(0, 113, 227, .35);
}
.brand-name { font-weight: 700; font-size: 17px; letter-spacing: -.02em; }
.brand-org { font-size: 12px; color: var(--text-2); }

.nav-item {
  display: flex; align-items: center; gap: 12px; width: 100%;
  padding: 9px 12px; border: 0; border-radius: 12px; background: transparent;
  text-align: left; font-size: 15px; color: var(--text);
  transition: background .15s;
}
.nav-item:hover { background: var(--fill-2); text-decoration: none; }
.nav-item.active { background: var(--blue-soft); color: var(--blue); font-weight: 600; }
.nav-item svg { flex: none; }
.nav-item .count { margin-left: auto; font-size: 13px; color: var(--text-2); font-weight: 500; }
.nav-item.active .count { color: var(--blue); }
.nav-spacer { flex: 1; }
.search-btn {
  display: flex; align-items: center; gap: 10px; width: 100%;
  padding: 9px 12px; border-radius: 12px; border: 0;
  background: var(--fill); color: var(--text-2); font-size: 14px; margin-bottom: 10px;
}
.search-btn kbd { margin-left: auto; }
kbd {
  font-family: var(--font); font-size: 11px; padding: 2px 6px; border-radius: 6px;
  background: var(--card); color: var(--text-2); border: .5px solid var(--sep);
}
.mode-pill { font-size: 12px; color: var(--text-2); padding: 8px 12px; display: flex; gap: 8px; align-items: center; }
.dot { width: 8px; height: 8px; border-radius: 50%; display: inline-block; flex: none; }

.main { padding: 36px 44px 120px; min-width: 0; }

.tabbar { display: none; }

/* ─── Заголовки в духе apple.com ─────────────────────────────────────────── */
.page-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 16px; margin-bottom: 22px; flex-wrap: wrap; }
.eyebrow { font-size: 14px; font-weight: 600; color: var(--blue); margin-bottom: 4px; }
.large-title { font-size: 44px; line-height: 1.06; font-weight: 700; letter-spacing: -.028em; margin: 0; }
.subtitle { font-size: 19px; color: var(--text-2); margin: 8px 0 0; letter-spacing: -.012em; }
.section-title { font-size: 22px; font-weight: 700; letter-spacing: -.02em; margin: 34px 0 12px; }

/* ─── Кнопки ─────────────────────────────────────────────────────────────── */
.btn {
  display: inline-flex; align-items: center; justify-content: center; gap: 6px;
  border: 0; border-radius: 980px; padding: 10px 20px; font-size: 15px; font-weight: 500;
  transition: transform .12s, background .15s, opacity .15s; white-space: nowrap;
}
.btn:active { transform: scale(.97); }
.btn-primary { background: var(--blue); color: #fff; }
.btn-primary:hover { background: #0077ed; text-decoration: none; }
.btn-glass { color: var(--text); }
.btn-glass:hover { text-decoration: none; filter: brightness(1.03); }
.btn-plain { background: transparent; color: var(--blue); padding: 8px 10px; }
.btn-danger { background: transparent; color: var(--red); }
.btn-sm { padding: 6px 14px; font-size: 13px; }
.icon-btn {
  width: 36px; height: 36px; border-radius: 50%; border: 0; display: grid; place-items: center;
  background: var(--fill); color: var(--text-2);
}
.icon-btn:hover { color: var(--text); }

/* ─── Панель инструментов и сегменты ─────────────────────────────────────── */
.toolbar {
  display: flex; gap: 10px; align-items: center; flex-wrap: wrap;
  padding: 8px; border-radius: 22px; margin-bottom: 18px;
}
.field {
  display: flex; align-items: center; gap: 8px; padding: 8px 12px; border-radius: 14px;
  background: var(--fill); color: var(--text-2); min-width: 220px; flex: 1 1 240px;
}
.field input { border: 0; outline: 0; background: transparent; width: 100%; color: var(--text); font-size: 15px; }
.seg { display: inline-flex; background: var(--fill); border-radius: 980px; padding: 3px; gap: 2px; }
.seg button {
  border: 0; background: transparent; border-radius: 980px; padding: 6px 14px;
  font-size: 14px; font-weight: 500; color: var(--text); transition: background .2s, box-shadow .2s;
}
.seg button.on { background: var(--card); box-shadow: 0 1px 3px rgba(0, 0, 0, .12), inset 0 .5px 0 rgba(255, 255, 255, .6); }
.select {
  appearance: none; border: 0; border-radius: 14px; padding: 8px 34px 8px 12px; background: var(--fill);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5l5 5 5-5' fill='none' stroke='%238e8e93' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat; background-position: right 12px center; max-width: 260px;
}
.chips { display: flex; gap: 8px; flex-wrap: wrap; margin-bottom: 16px; }
.chip {
  display: inline-flex; align-items: center; gap: 6px; padding: 5px 12px; border-radius: 980px;
  background: var(--blue-soft); color: var(--blue); font-size: 13px; font-weight: 500; border: 0;
}

/* ─── Канбан ─────────────────────────────────────────────────────────────── */
.board { display: flex; gap: 14px; overflow-x: auto; padding: 2px 2px 18px; scroll-snap-type: x proximity; }
.col { flex: 0 0 var(--col-w, 292px); scroll-snap-align: start; display: flex; flex-direction: column; gap: 10px; position: relative; }
.col.is-empty { flex-basis: min(190px, var(--col-w, 292px)); }
.col-head { border-radius: 18px; padding: 12px 14px; position: sticky; top: 0; z-index: 1; }
.col-title { display: flex; align-items: center; gap: 8px; font-weight: 600; font-size: 15px; }
.col-title .n { margin-left: auto; color: var(--text-2); font-weight: 500; font-size: 13px; }
.col-sum { font-size: 13px; color: var(--text-2); margin-top: 2px; }

.card {
  background: var(--card); border-radius: 18px; padding: 13px 15px; border: .5px solid var(--sep);
  box-shadow: 0 1px 2px rgba(0, 0, 0, .04); cursor: pointer; text-align: left; width: 100%;
  transition: transform .18s cubic-bezier(.2, .8, .2, 1), box-shadow .18s;
}
.card:hover { transform: translateY(-2px); box-shadow: var(--shadow); }
.card-title { font-weight: 600; font-size: 14.5px; line-height: 1.3; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.card-meta { font-size: 13px; color: var(--text-2); margin-top: 6px; display: flex; justify-content: space-between; gap: 8px; }
.card-meta .sum { color: var(--text); font-weight: 600; white-space: nowrap; }
.card-tags { display: flex; gap: 6px; flex-wrap: wrap; margin-top: 8px; }
.tag { font-size: 11.5px; font-weight: 600; padding: 2px 8px; border-radius: 980px; background: var(--fill); color: var(--text-2); }
.tag.red { background: rgba(255, 59, 48, .12); color: var(--red); }
.tag.orange { background: rgba(255, 149, 0, .14); color: #c77700; }
.tag.blue { background: var(--blue-soft); color: var(--blue); }
.tag.green { background: rgba(52, 199, 89, .14); color: #248a3d; }
.tag.purple { background: rgba(175, 82, 222, .14); color: var(--purple); }
:root[data-theme="dark"] .tag.orange { color: var(--orange); }
:root[data-theme="dark"] .tag.green { color: var(--green); }
.more { border: 0; background: transparent; color: var(--blue); font-size: 14px; padding: 8px; border-radius: 12px; }
.more:hover { background: var(--fill-2); }
.empty { color: var(--text-3); font-size: 14px; text-align: center; padding: 18px 8px; }

/* ─── Шторка (sheet) ─────────────────────────────────────────────────────── */
.scrim { position: fixed; inset: 0; background: rgba(0, 0, 0, .22); z-index: 40; animation: fade .2s ease; }
.sheet {
  position: fixed; z-index: 41; top: 14px; right: 14px; bottom: 14px; width: min(580px, calc(100vw - 28px));
  border-radius: 30px; overflow: auto; --glass-alpha: .88;
  animation: slide-in .32s cubic-bezier(.2, .9, .25, 1);
  box-shadow: inset 0 1px 0 var(--glass-hi), inset 0 0 0 .5px var(--glass-edge), var(--shadow-lg);
}
.sheet-head {
  position: sticky; top: 0; z-index: 2; display: flex; align-items: flex-start; gap: 12px; padding: 20px 22px 14px;
  background: linear-gradient(rgba(var(--glass-rgb), .92), rgba(var(--glass-rgb), .6));
  -webkit-backdrop-filter: blur(20px); backdrop-filter: blur(20px);
}
.sheet-head h2 { margin: 0; font-size: 22px; letter-spacing: -.02em; line-height: 1.2; }
.sheet-head .sub { color: var(--text-2); font-size: 14px; margin-top: 4px; }
.sheet-body { padding: 4px 22px 28px; }
.sheet.wide { width: min(1080px, calc(100vw - 28px)); }
/* Документ поверх открытой карточки */
.layer-top .scrim { z-index: 42; }
.layer-top .sheet { z-index: 43; }
@keyframes slide-in { from { transform: translateX(40px); opacity: 0; } to { transform: none; opacity: 1; } }
@keyframes fade { from { opacity: 0; } to { opacity: 1; } }

/* ─── Этапы (степпер) ────────────────────────────────────────────────────── */
.stepper { display: flex; gap: 6px; flex-wrap: wrap; margin: 6px 0 18px; }
.step {
  border: 0; border-radius: 980px; padding: 6px 12px; font-size: 13px; font-weight: 500;
  background: var(--fill); color: var(--text-2); display: inline-flex; gap: 6px; align-items: center;
}
.step.done { background: var(--fill-2); color: var(--text); }
.step.cur { color: #fff; }

/* ─── Сгруппированные списки (как в Настройках iOS) ──────────────────────── */
.group { background: var(--card); border-radius: 16px; overflow: hidden; border: .5px solid var(--sep); }
.group-title { font-size: 13px; color: var(--text-2); text-transform: uppercase; letter-spacing: .02em; margin: 22px 16px 8px; }
.group-note { font-size: 13px; color: var(--text-2); margin: 8px 16px 0; }
.row {
  display: flex; align-items: center; gap: 12px; padding: 11px 16px; min-height: 46px;
  border-bottom: .5px solid var(--sep);
}
.row:last-child { border-bottom: 0; }
.row .label { color: var(--text-2); flex: 0 0 150px; font-size: 14px; }
.row .value { flex: 1; min-width: 0; overflow-wrap: anywhere; }
.row input[type="text"], .row input[type="number"], .row input[type="date"], .row input[type="email"],
.row input[type="password"], .row select, .row textarea {
  flex: 1; min-width: 0; border: 0; outline: 0; background: transparent; font-size: 15px; padding: 2px 0;
}
.row textarea { resize: vertical; min-height: 60px; }
.row.clickable { cursor: pointer; }
.row.clickable:hover { background: var(--fill-2); }
.row .chev { margin-left: auto; color: var(--text-3); }

/* переключатель iOS */
.switch { position: relative; width: 51px; height: 31px; flex: none; }
.switch input { opacity: 0; width: 0; height: 0; }
.switch span { position: absolute; inset: 0; background: var(--fill); border-radius: 980px; transition: background .2s; cursor: pointer; }
.switch span::after {
  content: ""; position: absolute; top: 2px; left: 2px; width: 27px; height: 27px; border-radius: 50%;
  background: #fff; box-shadow: 0 3px 8px rgba(0, 0, 0, .15), 0 1px 1px rgba(0, 0, 0, .16); transition: transform .22s cubic-bezier(.3, .7, .3, 1);
}
.switch input:checked + span { background: var(--green); }
.switch input:checked + span::after { transform: translateX(20px); }

input[type="range"] { flex: 1; accent-color: var(--blue); }

/* ─── Таблицы ────────────────────────────────────────────────────────────── */
.table-wrap { background: var(--card); border-radius: 18px; border: .5px solid var(--sep); overflow: auto; max-height: 70vh; }
table { border-collapse: collapse; width: 100%; font-size: 14px; }
th {
  position: sticky; top: 0; background: var(--card); text-align: left; font-weight: 600; font-size: 12.5px;
  color: var(--text-2); padding: 10px 14px; border-bottom: .5px solid var(--sep); white-space: nowrap;
}
td { padding: 10px 14px; border-bottom: .5px solid var(--sep); vertical-align: top; }
tr:last-child td { border-bottom: 0; }
tbody tr.clickable { cursor: pointer; }
tbody tr.clickable:hover td { background: var(--fill-2); }
td.num, th.num { text-align: right; white-space: nowrap; font-variant-numeric: tabular-nums; }
td.muted { color: var(--text-2); }

/* ─── Отчёты ─────────────────────────────────────────────────────────────── */
.tiles { display: grid; grid-template-columns: repeat(auto-fill, minmax(var(--tile-min, 250px), 1fr)); gap: 14px; }
.tile {
  border-radius: 24px; padding: 20px; text-align: left; border: 1px solid var(--glass-border);
  display: flex; flex-direction: column; gap: 6px; min-height: 168px;
  transition: transform .18s cubic-bezier(.2, .8, .2, 1);
}
.tile:hover { transform: translateY(-3px); text-decoration: none; }
.tile-icon { width: 38px; height: 38px; border-radius: 12px; display: grid; place-items: center; color: #fff; margin-bottom: 6px; }
.tile-num { font-size: 30px; font-weight: 700; letter-spacing: -.025em; color: var(--text); }
.tile-label { font-size: 16px; font-weight: 600; color: var(--text); }
.tile-cap { font-size: 13px; color: var(--text-2); }

.kpis { display: grid; grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); gap: 12px; margin-bottom: 18px; }
.kpi { border-radius: 20px; padding: 16px 18px; }
.kpi .v { font-size: 26px; font-weight: 700; letter-spacing: -.02em; }
.kpi .l { font-size: 13px; color: var(--text-2); }

.bars { display: flex; flex-direction: column; gap: 8px; padding: 18px; border-radius: 22px; margin-bottom: 18px; }
.bar-row { display: grid; grid-template-columns: minmax(120px, 230px) 1fr 120px; gap: 12px; align-items: center; font-size: 13.5px; }
.bar-row .name { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.bar-track { height: 12px; border-radius: 980px; background: var(--fill-2); overflow: hidden; }
.bar-fill { height: 100%; border-radius: 980px; background: linear-gradient(90deg, #0a84ff, #30b0c7); }
.bar-row .v { text-align: right; font-variant-numeric: tabular-nums; color: var(--text-2); }
.back { display: inline-flex; align-items: center; gap: 2px; color: var(--blue); font-size: 17px; margin-bottom: 10px; border: 0; background: transparent; padding: 0; }

/* ─── Сканы заявок: горизонтальная лента и альбомный просмотр ───────────── */
.scan-strip { display: flex; gap: 12px; overflow-x: auto; padding: 4px 2px 14px; scroll-snap-type: x proximity; margin-bottom: 6px; }
.scan-card {
  flex: 0 0 196px; scroll-snap-align: start; display: flex; flex-direction: column; gap: 4px; text-align: left;
  border-radius: 20px; padding: 12px 14px; transition: transform .18s cubic-bezier(.2, .8, .2, 1);
}
.scan-card:hover { transform: translateY(-2px); }
.scan-card.on { outline: 2.5px solid var(--blue); outline-offset: -1px; }
.scan-card .t { font-weight: 600; font-size: 14px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.scan-card .s { font-size: 12px; color: var(--text-2); display: flex; align-items: center; gap: 6px; }
.scan-thumb {
  height: 64px; border-radius: 12px; display: grid; place-items: center; color: var(--text-3); margin-bottom: 6px;
  background: linear-gradient(180deg, var(--card), var(--fill-2)); border: .5px solid var(--sep);
}
.scan-preview { border-radius: 26px; padding: 10px; }
.preview-bar { display: flex; align-items: center; gap: 8px; padding: 2px 4px 10px; flex-wrap: wrap; }
/* Альбомный формат A4 (1,414 : 1); повёрнутые сканы разворачиваются для чтения */
.pdf-box { position: relative; width: 100%; aspect-ratio: 1.414 / 1; border-radius: 18px; overflow: hidden; background: var(--card); }
.pdf-box iframe {
  position: absolute; top: 50%; left: 50%; width: 100%; height: 100%; border: 0;
  transform: translate(-50%, -50%); background: #fff;
}
.pdf-box.rot90 iframe, .pdf-box.rot270 iframe { width: 70.72%; height: 141.4%; }
.pdf-box.rot90 iframe { transform: translate(-50%, -50%) rotate(90deg); }
.pdf-box.rot270 iframe { transform: translate(-50%, -50%) rotate(-90deg); }
.pdf-box.rot180 iframe { transform: translate(-50%, -50%) rotate(180deg); }
.scan-info { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.2fr); gap: 20px; align-items: start; }
.scan-info > div { min-width: 0; }
.conf { font-size: 12px; font-weight: 600; padding: 2px 8px; border-radius: 980px; }
.warn { display: flex; gap: 10px; padding: 10px 14px; border-radius: 14px; background: rgba(255, 149, 0, .12); font-size: 13.5px; margin-bottom: 8px; }
.info { display: flex; gap: 10px; padding: 10px 14px; border-radius: 14px; background: var(--blue-soft); font-size: 13.5px; margin-bottom: 8px; }
.agent { display: flex; align-items: center; gap: 12px; padding: 12px 16px; border-radius: 20px; margin-bottom: 14px; flex-wrap: wrap; }
.pulse { width: 10px; height: 10px; border-radius: 50%; background: var(--green); box-shadow: 0 0 0 0 rgba(52, 199, 89, .6); animation: pulse 2s infinite; }
@keyframes pulse { 70% { box-shadow: 0 0 0 10px rgba(52, 199, 89, 0); } 100% { box-shadow: 0 0 0 0 rgba(52, 199, 89, 0); } }
code, .mono { font-family: ui-monospace, "SF Mono", Menlo, monospace; font-size: 12.5px; }

/* ─── Командная строка (⌘K) ──────────────────────────────────────────────── */
.palette {
  position: fixed; z-index: 51; left: 50%; top: 14vh; transform: translateX(-50%);
  width: min(660px, calc(100vw - 28px)); border-radius: 26px; overflow: hidden; --glass-alpha: .84;
  animation: pop .22s cubic-bezier(.2, .9, .25, 1);
  box-shadow: inset 0 1px 0 var(--glass-hi), inset 0 0 0 .5px var(--glass-edge), var(--shadow-lg);
}
.palette-input { display: flex; align-items: center; gap: 12px; padding: 16px 20px; border-bottom: .5px solid var(--sep); }
.palette-input input { flex: 1; border: 0; outline: 0; background: transparent; font-size: 21px; letter-spacing: -.015em; }
.palette-list { max-height: 52vh; overflow: auto; padding: 6px; }
.pal-item { display: flex; align-items: center; gap: 12px; width: 100%; border: 0; background: transparent; text-align: left; padding: 10px 14px; border-radius: 12px; }
.pal-item.on { background: var(--blue); color: #fff; }
.pal-item.on .hint { color: rgba(255, 255, 255, .8); }
.pal-item .hint { margin-left: auto; font-size: 12.5px; color: var(--text-2); white-space: nowrap; }
.pal-group { font-size: 12px; color: var(--text-2); padding: 10px 14px 4px; font-weight: 600; }
.palette-scrim { position: fixed; inset: 0; z-index: 50; background: rgba(0, 0, 0, .18); animation: fade .15s; }
@keyframes pop { from { transform: translateX(-50%) scale(.97); opacity: 0; } to { transform: translateX(-50%); opacity: 1; } }

/* ─── Уведомление ────────────────────────────────────────────────────────── */
.toast {
  position: fixed; z-index: 60; left: 50%; bottom: 28px; transform: translateX(-50%);
  padding: 12px 20px; border-radius: 980px; font-weight: 500; display: flex; gap: 10px; align-items: center;
  animation: toast .3s cubic-bezier(.2, .9, .25, 1); --glass-alpha: .86;
}
@keyframes toast { from { transform: translate(-50%, 20px); opacity: 0; } to { transform: translateX(-50%); opacity: 1; } }

/* ─── Служебная записка (печать) ─────────────────────────────────────────── */
.memo { background: #fff; color: #000; border-radius: 12px; padding: 40px 48px; font-family: "Times New Roman", Times, serif; font-size: 15px; box-shadow: var(--shadow); }
.memo table { font-size: 13px; }
.memo th, .memo td { border: 1px solid #999; padding: 5px 7px; color: #000; background: #fff; position: static; }
.memo .to { margin-left: 55%; margin-bottom: 26px; }
.memo h3 { text-align: center; margin: 10px 0 4px; font-size: 17px; }
.memo .sign { display: flex; justify-content: space-between; margin-top: 36px; }

@media print {
  body * { visibility: hidden !important; }
  .print-area, .print-area * { visibility: visible !important; }
  .print-area { position: absolute; left: 0; top: 0; width: 100%; box-shadow: none; padding: 0; }
  .sheet { position: static; overflow: visible; }
}

/* ─── Вход ───────────────────────────────────────────────────────────────── */
.login { max-width: 420px; margin: 10vh auto; border-radius: 30px; padding: 30px; }

/* ─── Телефон и планшет ──────────────────────────────────────────────────── */
@media (max-width: 1100px) {
  .scan-info { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 860px) {
  .app { grid-template-columns: minmax(0, 1fr); }
  .sidebar { display: none; }
  .main { padding: 20px 16px 120px; }
  .large-title { font-size: 34px; }
  .subtitle { font-size: 16px; }
  .tabbar {
    display: flex; position: fixed; z-index: 30; left: 50%; bottom: 14px; transform: translateX(-50%);
    border-radius: 980px; padding: 6px; gap: 2px; width: min(460px, calc(100vw - 24px)); justify-content: space-between;
  }
  .tab {
    flex: 1; border: 0; background: transparent; border-radius: 980px; padding: 7px 4px 5px;
    display: flex; flex-direction: column; align-items: center; gap: 2px; font-size: 10.5px; font-weight: 600; color: var(--text-2);
  }
  .tab.active { background: var(--blue-soft); color: var(--blue); }
  .col { flex-basis: 84vw; }
  .scan-card { flex-basis: 160px; }
  .row .label { flex-basis: 110px; }
  .bar-row { grid-template-columns: 110px 1fr 90px; }
  .sheet { top: auto; left: 0; right: 0; bottom: 0; width: 100%; height: 92vh; border-radius: 28px 28px 0 0; }
  .sheet.wide { width: 100%; }
  .memo { padding: 20px; }
  .field { min-width: 0; }
}

/* ─── Компании группы ────────────────────────────────────────────────────── */
.company-row { margin: -6px 0 18px; overflow-x: auto; scrollbar-width: none; }
.company-row::-webkit-scrollbar { display: none; }
.company-seg { flex-wrap: nowrap; max-width: 100%; overflow-x: auto; scrollbar-width: none; }
.company-seg::-webkit-scrollbar { display: none; }
.company-seg button { white-space: nowrap; }

/* ─── Инженеры на левой панели ───────────────────────────────────────────── */
.sidebar { overflow: hidden; }
.eng-section { flex: 1 1 auto; min-height: 0; display: flex; flex-direction: column; margin-top: 12px; border-top: .5px solid var(--sep); padding-top: 10px; }
.eng-head {
  display: flex; align-items: center; gap: 6px; width: 100%; border: 0; background: transparent; padding: 6px 12px;
  font-size: 12px; font-weight: 600; color: var(--text-2); text-transform: uppercase; letter-spacing: .03em; border-radius: 10px;
}
.eng-head:hover { background: var(--fill-2); }
.eng-head .count { margin-left: auto; text-transform: none; font-weight: 500; }
.eng-head .chev { display: inline-flex; transition: transform .2s; }
.eng-head .chev.open { transform: rotate(90deg); }
.eng-list { overflow-y: auto; min-height: 0; padding: 4px 0; }
.eng-row { display: flex; align-items: center; gap: 22px; padding: 5px 10px; border-radius: 12px; }
.eng-row:hover { background: var(--fill-2); }
.eng-row.active { background: var(--blue-soft); }
.eng-row.active .eng-name { color: var(--blue); font-weight: 600; }
.eng-name { color: var(--text); font-size: 14px; flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.eng-name:hover { text-decoration: none; }
.avatar-btn { border: 0; background: transparent; padding: 0; position: relative; flex: none; border-radius: 50%; }
.avatar {
  position: relative; display: inline-grid; place-items: center; border-radius: 50%; color: #fff; font-weight: 600;
  flex: none; box-shadow: inset 0 0 0 .5px rgba(0, 0, 0, .12);
}
.avatar img { width: 100%; height: 100%; border-radius: 50%; object-fit: cover; }
.avatar .badge {
  position: absolute; top: -5px; left: 62%; min-width: 16px; height: 16px; padding: 0 4px; border-radius: 980px;
  background: var(--red); color: #fff; font-size: 9.5px; font-weight: 700; line-height: 16px; text-align: center;
  box-shadow: 0 0 0 2px var(--bg); letter-spacing: 0;
}
.avatar-btn:hover .avatar { filter: brightness(1.06); }
.avatar-btn.big .cam {
  position: absolute; right: 0; bottom: 0; width: 30px; height: 30px; border-radius: 50%; display: grid; place-items: center;
  background: var(--card); color: var(--text); box-shadow: var(--shadow);
}
.eng-hero { display: flex; align-items: center; gap: 22px; margin-bottom: 22px; flex-wrap: wrap; }

/* ─── Документы: красный — нет файла, зелёный — загружен ─────────────────── */
.dot.red { background: var(--red); box-shadow: 0 0 0 3px rgba(255, 59, 48, .16); }
.dot.green { background: var(--green); box-shadow: 0 0 0 3px rgba(52, 199, 89, .18); }
.doc-row .label { flex-basis: 170px; }
.doc-row .value a { font-weight: 500; }
.doc-row .btn { flex: none; }
.muted-text { color: var(--text-2); font-size: 13.5px; }
.mini-select { margin-left: 8px; border: 0; border-radius: 10px; background: var(--fill); padding: 4px 8px; font-size: 13px; max-width: 240px; }
.docdots { display: inline-flex; gap: 4px; margin-left: auto; align-items: center; padding-left: 4px; }
.docdots i { width: 7px; height: 7px; border-radius: 50%; background: rgba(255, 59, 48, .55); }
.docdots i.on { background: var(--green); }
.doc-pill { margin-left: auto; display: inline-flex; align-items: center; gap: 6px; font-size: 11.5px; color: var(--text-2); }
.doc-pill .dot { width: 7px; height: 7px; }
.card-tags { align-items: center; }
.inline-switch { display: inline-flex; align-items: center; gap: 8px; font-size: 14px; color: var(--text-2); padding: 0 6px; }
.rem-new input[type="date"], .rem-new input[type="time"] { flex: 0 1 auto; }

/* ─── Напоминания: правый верхний угол ───────────────────────────────────── */
#reminders-root { position: fixed; z-index: 70; top: 16px; right: 16px; display: flex; flex-direction: column; gap: 10px; width: min(370px, calc(100vw - 32px)); }
.reminder { border-radius: 22px; padding: 14px 16px; --glass-alpha: .9; animation: rem-in .38s cubic-bezier(.2, .9, .25, 1); box-shadow: inset 0 1px 0 var(--glass-hi), inset 0 0 0 .5px var(--glass-edge), var(--shadow-lg); }
@keyframes rem-in { from { transform: translateY(-14px) scale(.97); opacity: 0; } to { transform: none; opacity: 1; } }
.rem-head { display: flex; align-items: center; gap: 8px; font-size: 13px; }
.rem-head .muted-text { margin-left: auto; font-size: 12px; }
.rem-ico { width: 26px; height: 26px; border-radius: 8px; display: grid; place-items: center; background: var(--orange); color: #fff; }
.rem-title { font-weight: 600; margin: 8px 0 2px; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.rem-sub { font-size: 13px; color: var(--text-2); }
.rem-actions { display: flex; gap: 6px; margin-top: 12px; flex-wrap: wrap; }
.rem-snooze { display: none; margin-top: 12px; padding-top: 12px; border-top: .5px solid var(--sep); }
.reminder.snoozing .rem-snooze { display: block; }
.rem-quick { display: flex; gap: 6px; flex-wrap: wrap; margin-bottom: 10px; }
.rem-custom { display: flex; gap: 6px; align-items: center; flex-wrap: wrap; }
.rem-custom input { border: 0; border-radius: 10px; background: var(--fill); padding: 6px 8px; font-size: 14px; }
.sound-row { cursor: pointer; }
.sound-row input[type="radio"] { accent-color: var(--blue); width: 18px; height: 18px; flex: none; }

/* ─── Шаблоны ────────────────────────────────────────────────────────────── */
.tpl-cat { margin-top: 18px; border-radius: 18px; transition: background .15s, outline-color .15s; outline: 2px dashed transparent; outline-offset: 4px; }
.tpl-cat.drop { outline-color: var(--blue); background: var(--blue-soft); }
.tpl-head { display: flex; align-items: center; justify-content: space-between; margin: 0 4px 8px 0; }
.tpl-ico { color: var(--blue); display: inline-flex; }
.tpl-name { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.tpl-input { width: 100%; border: 0; outline: 2px solid var(--blue); border-radius: 8px; padding: 4px 8px; background: var(--card); font-size: 15px; }
.icon-btn.sm { width: 30px; height: 30px; flex: none; }
.empty-row { color: var(--text-3); justify-content: center; font-size: 14px; min-height: 64px; }

@media (max-width: 860px) {
  .tabbar { width: min(520px, calc(100vw - 20px)); }
  .tab { font-size: 9.5px; }
  .doc-row { flex-wrap: wrap; }
  .doc-row .label { flex-basis: 120px; }
  .eng-hero .large-title { font-size: 30px; }
}

/* ─── Скрытие и ширина левой панели ──────────────────────────────────────── */
.brand { position: relative; }
.brand-text { flex: 1; min-width: 0; }
.brand-name { overflow-wrap: anywhere; }
.brand-img { width: 40px; height: 40px; object-fit: contain; flex: none; }
.sb-toggle { width: 30px; height: 30px; flex: none; background: transparent; }
.sb-toggle:hover { background: var(--fill); }
/* панель убрана из сетки: основная область занимает всю ширину */
.app.sb-hidden { grid-template-columns: minmax(0, 1fr); }
.app.sb-hidden .sidebar { display: none; }
.app.sb-hidden .main { padding-left: 84px; }
.sb-float {
  display: none; position: fixed; z-index: 35; top: 16px; left: 16px; width: 44px; height: 44px; border-radius: 14px;
  place-items: center; color: var(--text); cursor: pointer;
}
.app.sb-hidden ~ .sb-float { display: grid; }
.sb-resizer { position: absolute; top: 20px; bottom: 20px; right: 0; width: 8px; cursor: col-resize; border-radius: 4px; }
.sb-resizer:hover, .col-resizer:hover { background: var(--blue-soft); }
.col-resizer { position: absolute; top: 0; bottom: 0; right: -11px; width: 8px; cursor: col-resize; border-radius: 4px; z-index: 2; }
body.resizing { cursor: col-resize; user-select: none; }
body.resizing * { cursor: col-resize !important; }

/* ─── Размер досок и плиток ──────────────────────────────────────────────── */
.section-title.with-tools { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
/* поиск сразу после заголовка, ползунок размера — у правого края */
.sec-tools { display: flex; align-items: center; gap: 12px; flex: 1 1 auto; justify-content: flex-start; min-width: 0; margin-left: 6px; }
.sec-tools .size-slider { margin-left: auto; }
.eng-search { flex: 0 1 360px; min-width: 200px; font-weight: 400; letter-spacing: 0; }
.eng-search input { font-size: 14px; }
.eng-found { flex: none; font-size: 12.5px; color: var(--text-3, var(--text-2)); white-space: nowrap; }
.eng-found:empty { display: none; }
@media (max-width: 720px) {
  .section-title.with-tools:has(.sec-tools) { flex-wrap: wrap; }
  .sec-tools { flex-basis: 100%; margin-left: 0; }
  .eng-search { flex: 1 1 auto; min-width: 0; }
  .sec-tools .size-slider { display: none; }  /* ширина колонок на телефоне не нужна */
}
.board.dense .card { padding: 10px 12px; }
.board.dense .card-title { font-size: 13.5px; }
.board.dense .card-meta { font-size: 12px; }
.board.roomy .card { padding: 16px 18px; }
.board.roomy .card-title { font-size: 16px; -webkit-line-clamp: 3; }
/* плитки масштабируются вместе с ползунком */
.tile-num { font-size: clamp(22px, calc(var(--tile-min, 250px) / 8.5), 42px); }
.tile { min-height: clamp(120px, calc(var(--tile-min, 250px) * .66), 230px); }

/* ─── Выбор времени: барабаны в стиле iOS ────────────────────────────────── */
.time-pill {
  display: inline-flex; align-items: center; gap: 6px; border: 0; border-radius: 10px; padding: 6px 12px;
  background: var(--fill); color: var(--text); font-size: 15px; font-variant-numeric: tabular-nums; font-weight: 500;
}
.time-pill:hover { background: var(--blue-soft); color: var(--blue); }
.pop-scrim { position: fixed; inset: 0; z-index: 79; }
.time-pop {
  position: fixed; z-index: 80; width: 232px; border-radius: 22px; padding: 12px 12px 10px; --glass-alpha: .92;
  box-shadow: inset 0 1px 0 var(--glass-hi), inset 0 0 0 .5px var(--glass-edge), var(--shadow-lg);
  animation: pop-in .22s cubic-bezier(.2, .9, .25, 1);
}
@keyframes pop-in { from { transform: scale(.94); opacity: 0; } to { transform: none; opacity: 1; } }
.wheels { position: relative; display: flex; justify-content: center; align-items: center; gap: 2px; height: 170px; perspective: 520px; }
.wheel-band { position: absolute; left: 6px; right: 6px; top: 50%; height: 34px; transform: translateY(-50%); background: var(--fill); border-radius: 10px; pointer-events: none; }
.wheel {
  position: relative; width: 74px; height: 170px; overflow-y: scroll; padding: 68px 0; box-sizing: border-box;
  scroll-snap-type: y mandatory; scrollbar-width: none; outline: none; transform-style: preserve-3d;
  -webkit-mask-image: linear-gradient(transparent, #000 30%, #000 70%, transparent);
  mask-image: linear-gradient(transparent, #000 30%, #000 70%, transparent);
}
.wheel::-webkit-scrollbar { display: none; }
.wheel-item {
  height: 34px; line-height: 34px; text-align: center; scroll-snap-align: center; cursor: pointer;
  font-size: 21px; font-variant-numeric: tabular-nums; color: var(--text); backface-visibility: hidden;
}
.wheel-item.sel { font-weight: 600; }
.wheel-colon { font-size: 21px; font-weight: 600; position: relative; top: -1px; }
.pop-actions { display: flex; justify-content: space-between; margin-top: 8px; }
.logo-preview { max-height: 40px; max-width: 160px; object-fit: contain; vertical-align: middle; }

/* ═══ Дизайн «В стиле предприятия» ═══════════════════════════════════════════
   Цвета и типографика по мотивам сайта заказчика: глубокий синий #183B81,
   яркий синий #0066FF, графит #3C3F4E, светлый фон #EFF3FB, сжатые заголовки капсом. */
:root[data-design="enterprise"] {
  --font: "Roboto", -apple-system, "Segoe UI", Arial, sans-serif;
  --font-display: "Oswald", "Bebas Neue", "Arial Narrow", Impact, sans-serif;
  --bg: #eff3fb;
  --card: #ffffff;
  --text: #111625;
  --text-2: #5b6275;
  --text-3: #8a90a6;
  --sep: rgba(24, 59, 129, .12);
  --fill: rgba(24, 59, 129, .08);
  --fill-2: rgba(24, 59, 129, .045);
  --blue: #0066ff;
  --blue-soft: rgba(0, 102, 255, .1);
  --navy: #183b81;
  --navy-2: #111625;
  --graphite: #3c3f4e;
  --shadow: 0 1px 2px rgba(17, 22, 37, .05), 0 8px 24px rgba(24, 59, 129, .08);
  --shadow-lg: 0 24px 60px rgba(17, 22, 37, .22);
  color-scheme: light;
}
:root[data-design="enterprise"][data-theme="dark"] {
  --bg: #0b1020; --card: #161f37; --text: #eef2fb; --text-2: #9aa3bd; --text-3: #6b7390;
  --sep: rgba(255, 255, 255, .09); --fill: rgba(255, 255, 255, .08); --fill-2: rgba(255, 255, 255, .045);
  --blue: #3d8bff; --blue-soft: rgba(61, 139, 255, .16); --navy: #183b81; --navy-2: #0b1020;
  --shadow: 0 1px 2px rgba(0, 0, 0, .4), 0 8px 24px rgba(0, 0, 0, .35); color-scheme: dark;
}
@media (prefers-color-scheme: dark) {
  :root[data-design="enterprise"]:not([data-theme="light"]) {
    --bg: #0b1020; --card: #161f37; --text: #eef2fb; --text-2: #9aa3bd; --text-3: #6b7390;
    --sep: rgba(255, 255, 255, .09); --fill: rgba(255, 255, 255, .08); --fill-2: rgba(255, 255, 255, .045);
    --blue: #3d8bff; --blue-soft: rgba(61, 139, 255, .16); --navy: #183b81; --navy-2: #0b1020;
    --shadow: 0 1px 2px rgba(0, 0, 0, .4), 0 8px 24px rgba(0, 0, 0, .35); color-scheme: dark;
  }
}
[data-design="enterprise"] body { letter-spacing: 0; }
[data-design="enterprise"] .backdrop {
  background: radial-gradient(70vw 40vw at 100% 0%, rgba(0, 102, 255, .07), transparent 60%), var(--bg);
}
/* плотные поверхности вместо стекла */
[data-design="enterprise"] .glass {
  background: var(--card); -webkit-backdrop-filter: none; backdrop-filter: none;
  border: 1px solid var(--sep); box-shadow: var(--shadow);
}
[data-design="enterprise"] :is(.card, .group, .table-wrap, .kpi, .tile, .bars, .toolbar, .col-head, .scan-card, .scan-preview, .agent, .reminder, .time-pop, .memo) { border-radius: 14px; }
[data-design="enterprise"] :is(.sheet, .palette) { border-radius: 18px; }
[data-design="enterprise"] .btn { border-radius: 12px; font-weight: 500; }
[data-design="enterprise"] .btn-primary { background: var(--blue); }
[data-design="enterprise"] .btn-primary:hover { background: #1a75ff; }
[data-design="enterprise"] .seg { border-radius: 12px; }
[data-design="enterprise"] .seg button { border-radius: 9px; }
[data-design="enterprise"] :is(.chip, .tag) { border-radius: 8px; }
[data-design="enterprise"] :is(.field, .select) { border-radius: 10px; }

/* левая панель — тёмно-синяя, как шапка сайта */
[data-design="enterprise"] .sidebar {
  background: linear-gradient(180deg, var(--navy) 0%, var(--navy-2) 100%); border: 0; color: #fff; border-radius: 18px;
  box-shadow: 0 12px 32px rgba(17, 22, 37, .25);
}
[data-design="enterprise"] .brand-logo { background: #fff; color: var(--navy); box-shadow: none; }
[data-design="enterprise"] .brand-name {
  font-family: var(--font-display); font-weight: 500; font-size: 15px; line-height: 1.15; text-transform: uppercase; letter-spacing: .02em;
}
[data-design="enterprise"] .brand-org { color: rgba(255, 255, 255, .6); font-size: 11.5px; }
[data-design="enterprise"] .sidebar .icon-btn { color: rgba(255, 255, 255, .75); }
[data-design="enterprise"] .sidebar .icon-btn:hover { background: rgba(255, 255, 255, .12); color: #fff; }
[data-design="enterprise"] .search-btn { background: rgba(255, 255, 255, .1); color: rgba(255, 255, 255, .75); }
[data-design="enterprise"] .search-btn kbd { background: rgba(255, 255, 255, .12); color: rgba(255, 255, 255, .8); border-color: transparent; }
[data-design="enterprise"] .nav-item { color: rgba(255, 255, 255, .85); border-radius: 12px; }
[data-design="enterprise"] .nav-item:hover { background: rgba(255, 255, 255, .08); }
[data-design="enterprise"] .nav-item.active { background: var(--blue); color: #fff; }
[data-design="enterprise"] :is(.nav-item .count, .nav-item.active .count) { color: rgba(255, 255, 255, .7); }
[data-design="enterprise"] .eng-section { border-top-color: rgba(255, 255, 255, .12); }
[data-design="enterprise"] .eng-head { color: rgba(255, 255, 255, .55); }
[data-design="enterprise"] :is(.eng-head, .eng-row):hover { background: rgba(255, 255, 255, .08); }
[data-design="enterprise"] .eng-name { color: #fff; }
[data-design="enterprise"] .eng-row.active { background: rgba(0, 102, 255, .35); }
[data-design="enterprise"] .eng-row.active .eng-name { color: #fff; }
[data-design="enterprise"] .avatar .badge { box-shadow: 0 0 0 2px var(--navy-2); }
[data-design="enterprise"] .mode-pill { color: rgba(255, 255, 255, .55); }
[data-design="enterprise"] .sb-resizer:hover { background: rgba(255, 255, 255, .15); }

/* шапка раздела — тёмно-синий баннер с волнами и крупным заголовком капсом */
[data-design="enterprise"] :is(.page-head, .eng-hero) {
  position: relative; overflow: hidden; color: #fff; border-radius: 18px; padding: 30px 32px;
  background: linear-gradient(115deg, var(--navy) 0%, #0e1a3d 100%);
}
[data-design="enterprise"] :is(.page-head, .eng-hero)::after {
  content: ""; position: absolute; right: -40px; bottom: -30px; width: 460px; height: 170px; opacity: .22; pointer-events: none;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='460' height='170' fill='none' stroke='white' stroke-width='2'%3E%3Cpath d='M0 40c38-24 77-24 115 0s77 24 115 0 77-24 115 0 77 24 115 0'/%3E%3Cpath d='M0 80c38-24 77-24 115 0s77 24 115 0 77-24 115 0 77 24 115 0'/%3E%3Cpath d='M0 120c38-24 77-24 115 0s77 24 115 0 77-24 115 0 77 24 115 0'/%3E%3Cpath d='M0 160c38-24 77-24 115 0s77 24 115 0 77-24 115 0 77 24 115 0'/%3E%3C/svg%3E") no-repeat right bottom;
}
[data-design="enterprise"] :is(.page-head, .eng-hero) > * { position: relative; z-index: 1; }
[data-design="enterprise"] .large-title {
  font-family: var(--font-display); font-weight: 600; text-transform: uppercase; letter-spacing: .01em; font-size: 54px; line-height: 1;
}
[data-design="enterprise"] :is(.page-head, .eng-hero) .subtitle { color: rgba(255, 255, 255, .78); }
[data-design="enterprise"] .eyebrow { text-transform: uppercase; letter-spacing: .08em; font-size: 12px; font-weight: 700; }
[data-design="enterprise"] :is(.page-head, .eng-hero) .eyebrow { color: #8db8ff; }
[data-design="enterprise"] .page-head .seg { background: rgba(255, 255, 255, .14); }
[data-design="enterprise"] .page-head .seg button { color: #fff; }
[data-design="enterprise"] .page-head .seg button.on { background: #fff; color: var(--navy); }
[data-design="enterprise"] .section-title {
  font-family: var(--font-display); font-weight: 600; text-transform: uppercase; letter-spacing: .02em; font-size: 26px;
}
[data-design="enterprise"] :is(.tile-num, .kpi .v) { font-family: var(--font-display); font-weight: 500; letter-spacing: .01em; }
[data-design="enterprise"] .tile-num { font-size: 34px; }
[data-design="enterprise"] .kpi .v { font-size: 30px; }
[data-design="enterprise"] .tile-icon { border-radius: 10px; }
[data-design="enterprise"] .col-head { border-top: 3px solid var(--navy); }
[data-design="enterprise"] .col-title { text-transform: uppercase; font-size: 13px; letter-spacing: .03em; }
[data-design="enterprise"] .card:hover { box-shadow: 0 10px 26px rgba(24, 59, 129, .14); }
[data-design="enterprise"] .bar-fill { background: linear-gradient(90deg, var(--navy), var(--blue)); }
[data-design="enterprise"] .company-seg button.on { background: var(--navy); color: #fff; }
[data-design="enterprise"] .tabbar { background: var(--navy-2); border: 0; }
[data-design="enterprise"] .tab { color: rgba(255, 255, 255, .7); }
[data-design="enterprise"] .tab.active { background: var(--blue); color: #fff; }
[data-design="enterprise"] .sb-float { background: var(--navy); color: #fff; border: 0; }
[data-design="enterprise"] .rem-ico { background: var(--blue); }

@media (max-width: 860px) {
  .sb-float { display: none !important; }
  .app.sb-hidden .main { padding-left: 16px; }
  [data-design="enterprise"] .large-title { font-size: 38px; }
  [data-design="enterprise"] :is(.page-head, .eng-hero) { padding: 22px 20px; }
}

/* ─── Ползунок размера досок и плиток ────────────────────────────────────── */
.size-slider { display: inline-flex; align-items: center; gap: 8px; padding: 4px 12px; border-radius: 980px; background: var(--fill); color: var(--text-2); }
.size-slider input[type="range"] { width: 130px; flex: none; }
.size-slider .sz-ico { display: inline-flex; }
.page-head .size-slider { background: rgba(120, 120, 128, .16); }
[data-design="enterprise"] .page-head .size-slider { background: rgba(255, 255, 255, .14); color: #fff; }

/* ─── Сортировка по столбцам ─────────────────────────────────────────────── */
.table-wrap th:not(:first-child) { cursor: pointer; user-select: none; }
.table-wrap th:not(:first-child):hover { color: var(--text); }
.table-wrap th[data-dir]::after { content: " ↑"; color: var(--blue); }
.table-wrap th[data-dir="desc"]::after { content: " ↓"; }
.memo th { cursor: default !important; }

/* ─── Оплата по сроку ────────────────────────────────────────────────────── */
.memo-bar { align-items: center; }
.memo-sel { flex: 1 1 280px; min-width: 0; padding: 0 6px; line-height: 1.35; }
.memo-sel svg { vertical-align: -2px; color: var(--blue); }
.memo-tpl { display: inline-flex; align-items: center; gap: 8px; color: var(--text-2); font-size: 14px; }
.memo-tpl .select { max-width: 300px; }
.btn[disabled] { opacity: .45; pointer-events: none; }
.radio { width: 18px; height: 18px; border-radius: 50%; border: 1.5px solid var(--text-3); display: inline-block; position: relative; vertical-align: middle; }
.radio.on { border-color: var(--blue); }
.radio.on::after { content: ""; position: absolute; inset: 3px; border-radius: 50%; background: var(--blue); }
tr.row-sel td { background: var(--blue-soft) !important; }
.tpl-help { margin: 0 0 8px; font-size: 13.5px; color: var(--text-2); }
.tpl-help summary { cursor: pointer; color: var(--blue); }
.tpl-tags { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 8px; }
.tpl-tags .tag { font-family: ui-monospace, "SF Mono", Menlo, monospace; font-weight: 500; }

/* ─── Инженеры в настройках ──────────────────────────────────────────────── */
.eng-set-row.is-hidden .avatar, .eng-set-row.is-hidden .eng-set-name a { opacity: .5; }
.eng-input { width: 100%; border: 0; outline: 2px solid var(--blue); border-radius: 8px; padding: 4px 8px; background: var(--card); font-size: 15px; }
.icon-btn.danger:hover { color: var(--red); background: rgba(255, 59, 48, .12); }

/* ─── Подтверждение в стиле iOS ──────────────────────────────────────────── */
.dlg-scrim { position: fixed; inset: 0; z-index: 90; background: rgba(0, 0, 0, .28); animation: fade .15s; }
.dlg {
  position: fixed; z-index: 91; left: 50%; top: 50%; transform: translate(-50%, -50%); width: min(340px, calc(100vw - 32px));
  border-radius: 22px; overflow: hidden; --glass-alpha: .9; animation: dlg-in .2s cubic-bezier(.2, .9, .25, 1);
  box-shadow: inset 0 1px 0 var(--glass-hi), inset 0 0 0 .5px var(--glass-edge), var(--shadow-lg);
}
@keyframes dlg-in { from { transform: translate(-50%, -50%) scale(1.08); opacity: 0; } to { transform: translate(-50%, -50%); opacity: 1; } }
.dlg-body { padding: 20px 18px 16px; text-align: center; display: flex; flex-direction: column; gap: 10px; }
.dlg-title { font-weight: 600; font-size: 17px; }
.dlg-text { font-size: 13.5px; color: var(--text-2); }
.dlg-actions { display: grid; grid-template-columns: 1fr 1fr; border-top: .5px solid var(--sep); }
.dlg-btn { border: 0; background: transparent; padding: 13px; font-size: 17px; color: var(--blue); }
.dlg-btn + .dlg-btn { border-left: .5px solid var(--sep); }
.dlg-btn.strong { font-weight: 600; }
.dlg-btn.danger { color: var(--red); font-weight: 600; }
.dlg-btn:hover { background: var(--fill-2); }
[data-design="enterprise"] .dlg { border-radius: 16px; }

/* ─── Каналы приёма и переписка ──────────────────────────────────────────── */
.ch-badge { width: 20px; height: 20px; border-radius: 6px; display: inline-grid; place-items: center; color: #fff; flex: none; vertical-align: middle; }
.scan-thumb { position: relative; }
.scan-thumb .ch-badge { position: absolute; right: 6px; bottom: 6px; width: 22px; height: 22px; }
.ch-list { display: flex; flex-wrap: wrap; gap: 6px 14px; }
.ch-status { display: inline-flex; align-items: center; gap: 6px; font-size: 13.5px; }
.ch-status.off { opacity: .5; }
.ch-dot { width: 8px; height: 8px; border-radius: 50%; display: inline-block; margin-right: 6px; }
.seg-n { color: var(--text-3); font-size: 12px; margin-left: 2px; }
.ch-seg { flex-wrap: wrap; }
.msg-block { border-radius: 22px; padding: 14px 16px; margin-bottom: 14px; }
.msg-head { display: flex; align-items: center; gap: 8px; margin-bottom: 10px; flex-wrap: wrap; }
.thread { display: flex; flex-direction: column; gap: 8px; }
.bubble { max-width: 78%; padding: 9px 13px; border-radius: 18px; font-size: 14.5px; line-height: 1.35; }
.bubble.in { align-self: flex-start; background: var(--fill); border-bottom-left-radius: 6px; }
.bubble.out { align-self: flex-end; background: var(--blue); color: #fff; border-bottom-right-radius: 6px; }
.bubble-meta { font-size: 11.5px; opacity: .7; margin-top: 4px; }
.bubble-file { display: inline-flex; gap: 6px; align-items: center; margin-top: 6px; padding: 4px 8px; border-radius: 8px; background: rgba(0, 0, 0, .06); font-size: 13px; }
[data-design="enterprise"] .msg-block { border-radius: 14px; }

/* ─── Редактирование на месте ────────────────────────────────────────────── */
.save-state { display: inline-block; margin-left: 8px; font-size: 12.5px; font-weight: 600; color: var(--green); opacity: 0; transition: opacity .25s; }
.save-state.show { opacity: 1; }
.save-state.err { color: var(--red); }
.row input[data-edit], .row select[data-edit], .row textarea[data-edit] { border-radius: 8px; padding: 4px 6px; margin: -4px -6px; transition: background .15s, box-shadow .15s; }
.row input[data-edit]:hover, .row select[data-edit]:hover, .row textarea[data-edit]:hover { background: var(--fill-2); }
.row input[data-edit]:focus, .row select[data-edit]:focus, .row textarea[data-edit]:focus { background: var(--card); box-shadow: 0 0 0 2px var(--blue); outline: none; }
.row textarea[data-edit] { min-height: 0; resize: none; overflow: hidden; line-height: 1.4; }
.cell-input { width: 100%; min-width: 60px; border: 0; background: transparent; border-radius: 6px; padding: 3px 5px; margin: -3px -5px; font-size: 14px; }
td.num .cell-input { text-align: right; }
.cell-input:hover { background: var(--fill-2); }
.cell-input:focus { outline: none; background: var(--card); box-shadow: 0 0 0 2px var(--blue); }

/* ─── Складываемые блоки ─────────────────────────────────────────────────── */
.fold-head { width: 100%; border: 0; background: transparent; text-align: left; justify-content: flex-start; gap: 8px; color: var(--text); cursor: pointer; }
.fold-head:hover { background: var(--fill-2); }
.fold-head .chev { display: inline-flex; margin-left: 0; transition: transform .2s; color: var(--text-3); }
.fold-head .chev.open { transform: rotate(90deg); }
.count-pill { font-size: 12px; font-weight: 600; padding: 1px 8px; border-radius: 980px; background: var(--fill); color: var(--text-2); }
.fold-hint { margin-left: auto; font-size: 12.5px; }
.fold-row { padding-left: 38px; }

/* ─── Администрирование ──────────────────────────────────────────────────── */
.admin-divider { display: flex; align-items: center; gap: 12px; margin: 38px 0 4px; color: var(--text-2); font-size: 13px; font-weight: 600; text-transform: uppercase; letter-spacing: .04em; }
.admin-divider::before, .admin-divider::after { content: ""; flex: 1; height: .5px; background: var(--sep); }
.admin-divider span { display: inline-flex; align-items: center; gap: 6px; }
.lock-ico { width: 32px; height: 32px; border-radius: 10px; display: grid; place-items: center; flex: none; background: var(--orange); color: #fff; }
.lock-ico.off { background: var(--fill); color: var(--text-2); }
.lock-ico.open { background: var(--green); }
.locked-card .row:last-child { gap: 16px; }
.pw-wrap { flex: 1; display: flex; align-items: center; gap: 4px; min-width: 0; }
.pw-wrap input { flex: 1; min-width: 0; border: 0; outline: 0; background: transparent; font-size: 15px; }
.form-err { color: var(--red); min-height: 20px; font-size: 14px; margin: 10px 0; }
.inline-check { gap: 10px; margin-top: 14px; border-radius: 12px; background: var(--card); border: .5px solid var(--sep); cursor: pointer; }
.inline-check input { width: 18px; height: 18px; accent-color: var(--blue); }
.rec-ways { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-top: 16px; }
.rec-way { display: flex; flex-direction: column; gap: 6px; align-items: flex-start; text-align: left; padding: 16px; border-radius: 18px; }
.rec-way svg { color: var(--blue); }
@media (max-width: 860px) { .rec-ways { grid-template-columns: 1fr; } }

/* ─── Демо-документы и плашка демо-версии ────────────────────────────────── */
.demo-banner {
  display: flex; align-items: center; gap: 10px; padding: 10px 14px; margin-bottom: 16px; border-radius: 14px;
  background: var(--blue-soft); color: var(--text); font-size: 14px;
}
.demo-banner svg { color: var(--blue); flex: none; }
.demo-banner span { flex: 1; }
.paper-box { background: var(--fill-2); border-radius: 16px; padding: 18px; overflow-x: auto; }
.paper {
  position: relative; overflow: hidden; max-width: 820px; margin: 0 auto; background: #fff; color: #1a1a1a;
  font-family: "Times New Roman", Times, serif; font-size: 14px; line-height: 1.45; padding: 28px 34px;
  box-shadow: 0 1px 3px rgba(0, 0, 0, .12), 0 8px 24px rgba(0, 0, 0, .08); border-radius: 4px;
}
.paper-mark {
  position: absolute; inset: 0; display: grid; place-items: center; pointer-events: none;
  font: 700 120px/1 Arial, sans-serif; color: rgba(0, 102, 255, .07); transform: rotate(-24deg); letter-spacing: .1em;
}
.paper-right { text-align: right; margin-bottom: 14px; font-size: 13px; }
.paper-title { text-align: center; font-weight: 700; font-size: 17px; margin: 6px 0 2px; }
.paper-sub { text-align: center; font-size: 13px; color: #444; margin-bottom: 12px; }
.paper-line { margin: 4px 0; }
.paper-table { width: 100%; border-collapse: collapse; margin: 12px 0; font-size: 13px; }
.paper-table th, .paper-table td { border: 1px solid #888; padding: 4px 7px; text-align: left; color: #1a1a1a; background: #fff; position: static; }
.paper-table td.num { text-align: right; }
.paper-total { text-align: right; font-weight: 700; margin-top: 6px; }
.paper-total span { font-weight: 400; font-size: 13px; }
.paper-sign { margin-top: 26px; font-size: 13px; }
.paper-blur { display: flex; flex-direction: column; gap: 10px; margin: 18px 0; }
.paper-blur span { height: 10px; border-radius: 5px; background: #e6e8ee; }
.paper-note { text-align: center; color: #666; font-size: 13px; }
.memo-paper p { margin: 0 0 8px; text-align: justify; }
.memo-paper p.to { margin: 0 0 0 55%; text-align: left; }
.memo-paper p.c { text-align: center; }
.memo-paper p.b { font-weight: 700; }
@media (max-width: 860px) { .paper { padding: 18px; } .paper-mark { font-size: 70px; } .memo-paper p.to { margin-left: 30%; } }

/* ─── Спроси отдел снабжения ─────────────────────────────────────────────── */
.ask-try { display: grid; grid-template-columns: minmax(0, 1.5fr) minmax(260px, 1fr); gap: 18px; align-items: start; }
.ask-chat .thread { max-height: 52vh; overflow-y: auto; padding: 4px 2px; }
.ask-input { display: flex; gap: 8px; }
.ask-input input { flex: 1; min-width: 0; border: 0; outline: 0; border-radius: 980px; padding: 10px 16px; background: var(--fill); color: var(--text); font-size: 15px; }
.bubble.in.eng { background: var(--blue-soft); }
.ask-log { display: grid; gap: 0; }
.ask-norms input, .ask-norms select { border: 0; outline: 0; background: transparent; color: var(--text); font-size: 14px; width: 100%; min-width: 60px; padding: 2px 0; }
.ask-norms td { padding: 6px 10px; }
@media (max-width: 900px) { .ask-try { grid-template-columns: 1fr; } }

/* ─── Стандартный дизайн в стиле сайта GALSA ────────────────────────────────
   Салатовый акцент, тёмная палитра сайта, топографический рельеф на фоне и
   живая подсветка логотипа. Светлая тема тоже салатовая, с тёмно-оливковым
   текстом акцента для читаемости. Дизайн «В стиле предприятия» не меняется. */
:root[data-design="standard"] {
  --accent: #c5f82a; --accent-2: #86cc1a; --on-accent: #0b0f02;
  --blue: #4a7a00; --blue-soft: rgba(134, 204, 26, .16);
  --blob-1: rgba(160, 225, 40, .22); --blob-2: rgba(160, 225, 40, .08); --blob-3: rgba(0, 0, 0, .02);
  --topo: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%201600%201100'%20preserveAspectRatio='xMidYMid%20slice'%3E%3Cg%20fill='none'%20stroke='white'%20stroke-opacity='.05'%20stroke-width='1.1'%3E%3Cpath%20d='M293%20180%20291%20185%20289%20189%20286%20193%20282%20196%20276%20198%20270%20199%20264%20198%20259%20197%20256%20196%20253%20197%20250%20200%20246%20203%20240%20206%20234%20208%20227%20208%20222%20206%20218%20202%20214%20198%20212%20194%20210%20189%20209%20185%20210%20180%20212%20176%20216%20172%20220%20169%20225%20167%20228%20165%20231%20162%20234%20160%20237%20156%20241%20154%20245%20153%20250%20154%20254%20155%20258%20157%20262%20159%20267%20159%20272%20160%20278%20160%20284%20162%20289%20166%20292%20170%20293%20175Z'/%3E%3Cpath%20d='M334%20180%20331%20189%20326%20198%20320%20206%20312%20212%20302%20216%20290%20217%20279%20216%20269%20213%20262%20212%20256%20214%20250%20219%20242%20227%20230%20233%20217%20237%20204%20237%20193%20233%20184%20226%20178%20217%20173%20208%20170%20199%20168%20189%20170%20180%20175%20171%20183%20164%20193%20159%20201%20155%20208%20151%20213%20146%20218%20140%20223%20134%20231%20128%20240%20126%20250%20126%20259%20129%20267%20133%20275%20136%20284%20137%20295%20138%20307%20140%20319%20145%20328%20152%20333%20160%20335%20170Z'/%3E%3Cpath%20d='M373%20180%20368%20194%20362%20206%20353%20218%20342%20227%20327%20233%20310%20235%20293%20233%20279%20230%20268%20229%20259%20232%20250%20240%20237%20251%20220%20261%20200%20267%20180%20267%20163%20260%20150%20250%20140%20237%20133%20223%20129%20208%20128%20194%20131%20180%20140%20167%20153%20157%20167%20150%20180%20144%20190%20138%20197%20131%20203%20121%20211%20111%20221%20102%20235%2097%20250%2097%20264%20101%20277%20106%20290%20111%20303%20113%20320%20116%20337%20120%20353%20127%20366%20138%20373%20151%20375%20166Z'/%3E%3Cpath%20d='M409%20180%20403%20198%20395%20214%20385%20229%20371%20242%20351%20250%20329%20253%20307%20251%20289%20248%20274%20246%20263%20251%20250%20262%20233%20276%20210%20290%20183%20298%20156%20297%20133%20288%20115%20274%20102%20256%2093%20237%2088%20218%2088%20199%2093%20180%20106%20163%20123%20150%20143%20141%20161%20134%20173%20127%20182%20117%20188%20103%20198%2088%20212%2075%20230%2068%20250%2067%20270%2071%20288%2078%20305%2084%20324%2088%20345%2092%20367%2099%20388%20109%20404%20124%20412%20142%20413%20161Z'/%3E%3Cpath%20d='M444%20180%20436%20201%20427%20222%20415%20240%20399%20256%20376%20267%20349%20271%20322%20270%20299%20266%20281%20265%20266%20271%20250%20285%20228%20303%20199%20320%20165%20329%20131%20328%20102%20317%2079%20298%2064%20276%2053%20252%2048%20227%2048%20203%2056%20180%2073%20160%2096%20144%20121%20133%20142%20125%20158%20116%20167%20103%20174%2086%20185%2066%20202%2048%20224%2037%20250%2034%20275%2039%20299%2047%20321%2055%20345%2062%20371%2068%20398%2077%20423%2091%20440%20110%20449%20133%20449%20157Z'/%3E%3Cpath%20d='M476%20180%20467%20205%20457%20229%20444%20251%20426%20270%20400%20284%20369%20290%20338%20289%20310%20285%20288%20285%20270%20292%20250%20309%20223%20330%20188%20350%20147%20361%20106%20359%2071%20345%2044%20323%2026%20295%2014%20266%208%20237%2010%20208%2021%20180%2041%20156%2070%20138%20100%20125%20126%20116%20143%20106%20153%2090%20161%2069%20172%2043%20191%2020%20219%205%20250%201%20281%205%20311%2015%20339%2025%20367%2034%20398%2043%20429%2056%20457%2074%20476%2098%20484%20125%20483%20153Z'/%3E%3Cpath%20d='M505%20180%20494%20208%20484%20235%20472%20261%20452%20284%20425%20301%20390%20309%20354%20309%20322%20306%20296%20306%20274%20315%20250%20334%20218%20359%20176%20381%20128%20393%2081%20391%2040%20374%209%20347%20-12%20315%20-25%20280%20-30%20246%20-28%20212%20-14%20180%2011%20153%2045%20132%2080%20118%20110%20108%20129%2096%20139%2078%20147%2051%20159%2020%20181%20-8%20213%20-28%20250%20-35%20288%20-31%20323%20-20%20357%20-7%20390%205%20426%2018%20460%2034%20490%2057%20510%2085%20517%20117%20513%20150Z'/%3E%3Cpath%20d='M531%20180%20520%20211%20510%20241%20498%20271%20479%20298%20449%20318%20412%20329%20371%20331%20335%20329%20305%20330%20279%20340%20250%20361%20212%20389%20164%20413%20110%20426%2056%20422%2010%20402%20-25%20370%20-48%20333%20-62%20294%20-68%20255%20-64%20216%20-47%20180%20-18%20149%2021%20126%2061%20111%2094%20100%20115%2087%20126%2065%20133%2034%20145%20-3%20170%20-38%20206%20-62%20250%20-72%20295%20-68%20336%20-56%20376%20-40%20414%20-25%20454%20-8%20492%2013%20523%2040%20542%2073%20547%20110%20542%20146Z'/%3E%3Cpath%20d='M554%20180%20543%20214%20534%20247%20523%20280%20505%20311%20474%20336%20434%20350%20390%20354%20349%20353%20314%20355%20284%20367%20250%20390%20207%20420%20152%20446%2091%20458%2031%20453%20-20%20429%20-58%20393%20-83%20351%20-98%20307%20-104%20263%20-99%20220%20-80%20180%20-46%20146%20-2%20121%2043%20104%2079%2092%20102%2077%20112%2052%20118%2016%20132%20-27%20159%20-69%20200%20-98%20250%20-111%20302%20-107%20350%20-93%20395%20-74%20439%20-55%20482%20-34%20522%20-9%20554%2024%20573%2062%20576%20104%20567%20144Z'/%3E%3Cpath%20d='M1424%20240%201421%20245%201416%20249%201410%20251%201404%20253%201400%20254%201397%20256%201395%20259%201394%20265%201391%20271%201387%20277%201380%20281%201372%20282%201365%20281%201358%20279%201352%20275%201347%20271%201342%20266%201340%20261%201339%20255%201340%20249%201343%20244%201346%20240%201349%20236%201350%20233%201350%20229%201349%20224%201350%20219%201353%20215%201357%20212%201363%20210%201369%20210%201374%20209%201380%20209%201386%20207%201393%20206%201400%20205%201407%20206%201414%20209%201418%20213%201421%20219%201423%20224%201425%20230%201425%20235Z'/%3E%3Cpath%20d='M1466%20240%201461%20249%201452%20257%201441%20262%201429%20265%201420%20268%201415%20272%201412%20279%201409%20290%201403%20303%201393%20314%201380%20322%201365%20325%201349%20323%201336%20318%201324%20310%201313%20302%201305%20292%201300%20281%201299%20270%201302%20258%201308%20248%201315%20240%201320%20233%201322%20226%201321%20218%201319%20209%201320%20198%201324%20189%201333%20182%201345%20178%201357%20177%201369%20176%201380%20175%201392%20172%201406%20170%201420%20169%201434%20172%201446%20179%201455%20188%201461%20198%201464%20209%201467%20220%201468%20230Z'/%3E%3Cpath%20d='M1507%20240%201501%20254%201489%20265%201472%20274%201455%20279%201442%20283%201433%20289%201429%20301%201424%20317%201415%20336%201400%20353%201380%20365%201357%20369%201334%20366%201313%20357%201295%20346%201280%20332%201268%20317%201261%20301%201260%20284%201265%20267%201275%20252%201286%20240%201293%20230%201295%20220%201293%20208%201289%20193%201289%20177%201295%20162%201308%20151%201325%20144%201344%20142%201362%20141%201380%20139%201399%20136%201419%20134%201441%20134%201461%20139%201478%20150%201490%20164%201498%20179%201503%20195%201507%20210%201509%20225Z'/%3E%3Cpath%20d='M1547%20240%201540%20258%201525%20274%201504%20285%201482%20293%201465%20299%201453%20308%201447%20323%201440%20345%201428%20370%201407%20393%201380%20408%201349%20413%201318%20409%201290%20397%201267%20381%201247%20363%201232%20343%201223%20321%201223%20297%201231%20275%201244%20256%201259%20240%201269%20227%201270%20214%201266%20198%201260%20178%201258%20155%201265%20134%201282%20118%201305%20108%201330%20104%201355%20103%201380%20101%201405%2098%201433%2096%201461%2099%201487%20107%201508%20122%201523%20141%201532%20162%201539%20182%201544%20202%201547%20221Z'/%3E%3Cpath%20d='M1586%20240%201579%20263%201562%20283%201537%20298%201511%20307%201489%20316%201475%20328%201466%20347%201456%20374%201441%20405%201415%20433%201380%20452%201341%20457%201303%20451%201268%20436%201239%20416%201215%20393%201197%20367%201186%20339%201187%20311%201197%20283%201215%20259%201233%20240%201245%20224%201246%20209%201239%20188%201230%20163%201226%20133%201234%20105%201254%2084%201283%2071%201316%2065%201348%2063%201380%2061%201412%2059%201446%2059%201481%2063%201512%2076%201537%2095%201554%20120%201564%20145%201572%20170%201578%20193%201584%20217Z'/%3E%3Cpath%20d='M1623%20240%201618%20267%201600%20292%201572%20310%201542%20323%201516%20334%201498%20349%201486%20372%201474%20405%201454%20441%201422%20474%201380%20495%201333%20501%201287%20493%201246%20474%201212%20449%201183%20421%201162%20391%201151%20358%201152%20323%201165%20290%201187%20262%201209%20240%201222%20222%201222%20203%201212%20179%201199%20147%201194%20111%201202%2076%201226%2048%201261%2031%201300%2023%201341%2021%201380%2020%201420%2019%201460%2021%201501%2029%201536%2045%201564%2070%201582%20100%201593%20130%201602%20159%201610%20186%201619%20213Z'/%3E%3Cpath%20d='M1660%20240%201657%20272%201639%20301%201609%20324%201575%20340%201545%20354%201523%20372%201508%20400%201492%20437%201467%20478%201429%20515%201380%20539%201325%20544%201272%20534%201225%20511%201185%20482%201153%20449%201129%20414%201117%20375%201118%20336%201135%20298%201160%20265%201185%20240%201200%20219%201199%20197%201185%20169%201168%20131%201160%2087%201169%2045%201196%2011%201237%20-11%201285%20-20%201333%20-23%201380%20-22%201427%20-21%201474%20-17%201520%20-5%201560%2016%201589%2047%201608%2082%201620%20117%201629%20149%201640%20179%201652%20209Z'/%3E%3Cpath%20d='M1696%20240%201697%20276%201680%20310%201649%20338%201611%20359%201576%20376%201551%20398%201532%20429%201511%20470%201481%20516%201437%20556%201380%20581%201318%20587%201258%20573%201205%20547%201160%20513%201124%20476%201097%20436%201083%20393%201086%20348%201104%20305%201133%20268%201161%20240%201177%20217%201175%20192%201157%20159%201136%20115%201125%2063%201134%2013%201165%20-28%201213%20-53%201268%20-65%201325%20-67%201380%20-66%201434%20-62%201488%20-54%201539%20-38%201582%20-11%201613%2025%201632%2065%201643%20105%201654%20140%201667%20172%201684%20205Z'/%3E%3Cpath%20d='M1732%20240%201737%20281%201722%20320%201690%20353%201649%20378%201610%20400%201580%20425%201556%20459%201531%20505%201495%20555%201444%20597%201380%20623%201310%20627%201244%20611%201186%20581%201137%20543%201097%20502%201067%20457%201051%20409%201054%20359%201074%20312%201106%20272%201137%20240%201153%20214%201149%20186%201128%20148%201103%2098%201089%2038%201098%20-20%201133%20-67%201187%20-98%201251%20-111%201317%20-113%201380%20-110%201442%20-103%201502%20-91%201557%20-70%201603%20-38%201635%204%201654%2050%201665%2094%201676%20132%201693%20167%201714%20202Z'/%3E%3Cpath%20d='M881%20620%20883%20627%20881%20634%20875%20640%20868%20645%20861%20649%20855%20652%20849%20656%20843%20661%20836%20665%20828%20667%20820%20666%20812%20662%20806%20657%20802%20651%20799%20647%20795%20643%20790%20641%20785%20638%20780%20635%20775%20631%20771%20626%20768%20620%20765%20614%20762%20606%20760%20598%20761%20590%20765%20582%20773%20577%20784%20575%20795%20576%20805%20580%20814%20585%20820%20588%20825%20590%20831%20591%20837%20591%20843%20591%20849%20593%20854%20596%20859%20600%20865%20604%20871%20608%20877%20613Z'/%3E%3Cpath%20d='M946%20620%20948%20635%20944%20649%20932%20661%20917%20670%20902%20677%20889%20683%20877%20691%20865%20699%20852%20707%20836%20710%20820%20709%20805%20703%20793%20693%20784%20683%20777%20674%20768%20668%20759%20663%20747%20657%20737%20650%20727%20642%20720%20631%20715%20620%20709%20607%20704%20593%20700%20576%20702%20559%20710%20544%20727%20534%20748%20530%20771%20534%20791%20542%20808%20551%20820%20558%20830%20562%20841%20562%20853%20562%20865%20564%20877%20567%20889%20572%20900%20579%20912%20586%20925%20595%20937%20607Z'/%3E%3Cpath%20d='M1014%20620%201017%20643%201009%20664%20990%20682%20966%20695%20942%20705%20921%20713%20903%20723%20885%20735%20866%20745%20844%20751%20820%20750%20798%20742%20780%20728%20766%20714%20754%20702%20740%20693%20725%20686%20707%20678%20691%20667%20677%20654%20667%20638%20660%20620%20652%20601%20645%20579%20641%20555%20644%20529%20657%20507%20681%20492%20713%20487%20747%20492%20778%20505%20802%20519%20820%20529%20835%20534%20851%20535%20869%20535%20887%20536%20906%20541%20924%20548%20942%20557%20961%20568%20981%20582%201000%20599Z'/%3E%3Cpath%20d='M1084%20620%201088%20651%201076%20680%201049%20704%201015%20720%20981%20732%20952%20741%20927%20753%20904%20767%20879%20781%20850%20789%20820%20789%20791%20779%20767%20763%20748%20746%20730%20732%20711%20721%20688%20711%20664%20700%20642%20685%20624%20666%20612%20644%20604%20620%20595%20594%20588%20565%20583%20533%20587%20500%20605%20471%20637%20451%20679%20445%20724%20452%20765%20469%20796%20487%20820%20501%20840%20508%20861%20509%20884%20508%20909%20509%20935%20514%20960%20523%20985%20535%201012%20550%201040%20568%201066%20592Z'/%3E%3Cpath%20d='M1157%20620%201161%20659%201144%20696%201108%20725%201063%20745%201019%20758%20981%20768%20949%20781%20921%20798%20891%20814%20857%20825%20820%20825%20785%20815%20755%20798%20729%20779%20705%20763%20679%20750%20649%20739%20618%20724%20590%20704%20569%20679%20555%20650%20547%20620%20539%20588%20531%20552%20526%20513%20532%20472%20555%20436%20594%20412%20647%20404%20702%20414%20752%20434%20791%20457%20820%20474%20845%20482%20871%20482%20900%20480%20932%20481%20965%20487%20997%20497%201030%20512%201065%20530%201101%20554%201135%20584Z'/%3E%3Cpath%20d='M1232%20620%201236%20668%201213%20712%201167%20747%201111%20769%201055%20783%201008%20793%20970%20807%20937%20825%20902%20844%20863%20858%20820%20860%20779%20850%20742%20833%20710%20813%20679%20796%20645%20782%20607%20768%20568%20750%20534%20724%20510%20693%20496%20657%20489%20620%20482%20581%20475%20539%20472%20493%20480%20445%20507%20403%20554%20374%20616%20366%20681%20376%20739%20400%20785%20427%20820%20447%20850%20455%20880%20455%20916%20452%20955%20452%20995%20458%201035%20471%201076%20488%201120%20510%201165%20539%201205%20576Z'/%3E%3Cpath%20d='M1308%20620%201311%20676%201282%20728%201226%20768%201157%20793%201090%20807%201033%20817%20989%20830%20951%20850%20912%20872%20868%20888%20820%20893%20772%20885%20729%20868%20690%20848%20651%20830%20609%20815%20562%20799%20515%20777%20476%20746%20449%20707%20436%20664%20431%20620%20427%20575%20422%20526%20420%20474%20430%20420%20461%20371%20515%20339%20586%20329%20661%20341%20727%20368%20780%20397%20820%20419%20854%20428%20891%20427%20932%20423%20979%20422%201027%20429%201075%20443%201124%20464%201176%20490%201229%20524%201277%20567Z'/%3E%3Cpath%20d='M1384%20620%201386%20685%201350%20745%201284%20790%201202%20817%201123%20830%201057%20839%201006%20852%20964%20873%20922%20897%20873%20917%20820%20925%20766%20919%20716%20903%20669%20884%20622%20867%20570%20851%20513%20833%20458%20806%20414%20768%20386%20722%20374%20671%20372%20620%20372%20569%20370%20514%20371%20456%20384%20396%20419%20342%20479%20305%20558%20293%20641%20306%20716%20336%20775%20368%20820%20391%20860%20400%20902%20398%20950%20392%201004%20391%201060%20399%201116%20415%201173%20438%201234%20469%201295%20508%201350%20559Z'/%3E%3Cpath%20d='M1461%20620%201461%20694%201418%20761%201341%20810%201246%20839%201155%20852%201079%20859%201022%20872%20976%20894%20931%20921%20878%20945%20820%20957%20760%20954%20703%20940%20647%20922%20591%20906%20528%20889%20462%20868%20398%20837%20349%20792%20320%20737%20311%20679%20314%20620%20320%20562%20322%20503%20325%20439%20341%20374%20379%20315%20445%20274%20531%20260%20622%20273%20704%20304%20769%20338%20820%20362%20865%20370%20913%20366%20969%20359%201031%20358%201094%20367%201158%20385%201224%20413%201292%20448%201362%20493%201423%20551Z'/%3E%3Cpath%20d='M199%20900%20198%20904%20196%20908%20192%20912%20188%20915%20184%20917%20181%20919%20178%20922%20174%20925%20170%20928%20165%20929%20160%20929%20155%20928%20150%20926%20145%20926%20139%20926%20132%20926%20125%20925%20118%20922%20113%20917%20111%20912%20112%20905%20116%20900%20121%20895%20125%20892%20130%20889%20134%20886%20137%20884%20142%20883%20145%20882%20149%20881%20152%20879%20156%20876%20160%20872%20166%20867%20173%20864%20181%20864%20187%20866%20192%20870%20195%20876%20197%20881%20197%20886%20198%20891%20199%20896Z'/%3E%3Cpath%20d='M236%20900%20234%20908%20229%20916%20222%20923%20215%20928%20208%20933%20202%20939%20196%20945%20189%20951%20181%20957%20171%20959%20160%20959%20150%20957%20140%20954%20130%20953%20118%20952%20104%20951%2090%20949%2076%20943%2067%20934%2064%20923%2067%20911%2074%20900%2083%20891%2092%20884%20100%20878%20108%20873%20115%20869%20123%20866%20131%20864%20138%20861%20144%20857%20151%20851%20160%20842%20172%20834%20187%20828%20202%20826%20216%20830%20226%20839%20231%20850%20234%20862%20234%20873%20235%20882%20236%20891Z'/%3E%3Cpath%20d='M271%20900%20267%20912%20260%20923%20250%20933%20240%20941%20230%20949%20223%20958%20215%20968%20205%20979%20192%20988%20177%20992%20160%20992%20144%20989%20129%20984%20114%20981%2097%20979%2077%20977%2055%20973%2036%20964%2023%20950%2018%20933%2023%20916%2034%20900%2047%20887%2060%20876%2071%20868%2082%20860%2093%20854%20105%20849%20116%20845%20126%20841%20136%20835%20147%20825%20160%20812%20178%20799%20200%20790%20224%20788%20245%20794%20260%20808%20268%20825%20271%20843%20271%20859%20271%20874%20271%20887Z'/%3E%3Cpath%20d='M303%20900%20298%20916%20288%20930%20276%20942%20263%20953%20252%20964%20243%20977%20234%20992%20221%201007%20204%201020%20183%201027%20160%201028%20138%201023%20118%201016%2097%201010%2075%201006%2049%201002%2022%20996%20-3%20984%20-20%20966%20-25%20943%20-18%20921%20-5%20900%2012%20883%2028%20869%2043%20857%2056%20847%2070%20838%2085%20831%20101%20826%20115%20820%20128%20812%20142%20798%20160%20781%20185%20763%20215%20751%20247%20748%20275%20757%20295%20776%20305%20799%20308%20824%20307%20846%20306%20866%20305%20883Z'/%3E%3Cpath%20d='M334%20900%20327%20919%20315%20936%20300%20951%20286%20965%20274%20979%20264%20996%20253%201016%20238%201037%20217%201055%20190%201065%20160%201065%20132%201059%20105%201049%2080%201040%2053%201033%2022%201028%20-11%201018%20-40%201003%20-59%20980%20-65%20953%20-57%20925%20-41%20900%20-21%20879%20-2%20862%2014%20847%2030%20833%2047%20822%2065%20813%2084%20806%20102%20799%20119%20788%20137%20771%20160%20749%20191%20727%20229%20712%20269%20708%20305%20720%20329%20744%20342%20774%20345%20805%20342%20833%20339%20858%20337%20880Z'/%3E%3Cpath%20d='M362%20900%20354%20922%20340%20942%20324%20960%20308%20976%20295%20994%20285%201016%20274%201042%20256%201069%20230%201092%20197%201104%20160%201105%20125%201096%2093%201083%2063%201071%2031%201061%20-5%201052%20-42%201040%20-75%201021%20-97%20994%20-103%20962%20-94%20929%20-75%20900%20-53%20876%20-32%20855%20-14%20836%203%20819%2022%20805%2044%20793%2067%20784%2089%20775%20109%20762%20132%20742%20160%20716%20198%20690%20244%20672%20292%20668%20335%20683%20364%20712%20378%20749%20381%20787%20377%20821%20372%20850%20368%20876Z'/%3E%3Cpath%20d='M390%20900%20379%20925%20364%20948%20346%20968%20329%20987%20317%201009%20307%201036%20295%201068%20275%201102%20244%201130%20204%201146%20160%201147%20118%201136%2080%201119%2045%201102%209%201088%20-31%201076%20-72%201061%20-108%201038%20-131%201006%20-138%20970%20-128%20933%20-107%20900%20-83%20872%20-62%20848%20-43%20826%20-25%20805%20-3%20787%2022%20772%2049%20761%2075%20750%2099%20735%20126%20712%20160%20682%20205%20652%20258%20632%20315%20629%20364%20646%20398%20680%20414%20724%20416%20769%20410%20809%20403%20843%20397%20873Z'/%3E%3Cpath%20d='M416%20900%20404%20928%20387%20953%20368%20976%20351%20998%20338%201024%20329%201056%20317%201095%20295%201136%20259%201170%20212%201190%20160%201191%20110%201177%2066%201155%2027%201134%20-13%201115%20-56%201099%20-100%201080%20-138%201053%20-163%201018%20-170%20977%20-159%20937%20-137%20900%20-113%20869%20-91%20841%20-73%20815%20-54%20790%20-31%20768%20-2%20750%2029%20737%2059%20724%2089%20706%20121%20681%20160%20648%20211%20615%20273%20592%20337%20589%20393%20610%20431%20649%20449%20700%20450%20751%20442%20797%20432%20836%20424%20870Z'/%3E%3Cpath%20d='M441%20900%20427%20931%20409%20959%20389%20984%20372%201009%20361%201039%20352%201078%20340%201124%20315%201172%20275%201212%20220%201235%20160%201236%20103%201220%2053%201193%209%201165%20-34%201142%20-79%201121%20-126%201098%20-166%201068%20-192%201029%20-199%20984%20-188%20940%20-166%20900%20-141%20865%20-121%20834%20-103%20804%20-84%20774%20-60%20748%20-28%20726%207%20710%2043%20696%2078%20676%20115%20649%20160%20613%20218%20577%20287%20553%20359%20551%20422%20574%20464%20620%20482%20676%20482%20734%20473%20786%20461%20829%20451%20867Z'/%3E%3Cpath%20d='M1476%20960%201475%20963%201476%20966%201477%20970%201478%20974%201477%20979%201474%20982%201470%20985%201465%20986%201460%20987%201455%20987%201450%20988%201445%20989%201439%20990%201433%20991%201427%20989%201422%20986%201419%20981%201418%20977%201417%20972%201417%20968%201417%20964%201418%20960%201420%20957%201423%20954%201427%20952%201430%20950%201432%20948%201433%20945%201434%20940%201436%20935%201439%20929%201444%20925%201450%20922%201457%20923%201463%20925%201468%20929%201472%20933%201475%20937%201478%20941%201479%20945%201480%20949%201479%20953%201478%20957Z'/%3E%3Cpath%20d='M1500%20960%201499%20966%201501%20972%201504%20980%201506%20989%201505%20998%201500%201006%201492%201012%201481%201015%201470%201016%201460%201016%201450%201017%201439%201019%201428%201021%201416%201020%201404%201017%201396%201010%201390%201002%201387%20992%201386%20983%201385%20975%201386%20967%201387%20960%201390%20953%201396%20947%201403%20943%201409%20939%201414%20935%201416%20929%201418%20920%201421%20909%201427%20897%201437%20889%201450%20884%201464%20885%201476%20890%201486%20897%201494%20906%201500%20914%201505%20922%201507%20930%201508%20939%201506%20947%201503%20954Z'/%3E%3Cpath%20d='M1523%20960%201522%20968%201525%20978%201530%20989%201535%201003%201534%201018%201527%201031%201514%201040%201498%201045%201482%201046%201466%201046%201450%201047%201434%201049%201417%201051%201399%201049%201383%201043%201371%201033%201363%201021%201358%201007%201357%20994%201355%20982%201355%20971%201356%20960%201360%20950%201368%20941%201377%20933%201387%20928%201394%20921%201398%20912%201401%20898%201405%20882%201415%20865%201431%20852%201450%20846%201470%20847%201489%20854%201504%20866%201515%20879%201524%20892%201531%20904%201535%20917%201535%20929%201532%20941%201527%20951Z'/%3E%3Cpath%20d='M1545%20960%201545%20971%201550%20983%201558%20999%201564%201019%201564%201039%201556%201057%201538%201070%201517%201077%201493%201078%201471%201078%201450%201078%201429%201080%201406%201080%201383%201077%201363%201068%201347%201055%201337%201038%201332%201021%201329%201004%201326%20989%201324%20974%201324%20960%201329%20946%201338%20934%201350%20924%201363%20915%201372%20906%201378%20894%201383%20876%201390%20854%201403%20832%201424%20815%201450%20807%201477%20809%201502%20820%201521%20835%201536%20853%201548%20870%201556%20887%201560%20903%201561%20920%201557%20935%201550%20948Z'/%3E%3Cpath%20d='M1567%20960%201567%20973%201574%20989%201586%201010%201595%201035%201596%201061%201585%201085%201564%201102%201536%201110%201506%201112%201477%201111%201450%201110%201423%201110%201395%201109%201368%201103%201344%201092%201326%201075%201314%201054%201308%201033%201303%201014%201299%20996%201294%20978%201292%20960%201296%20942%201307%20926%201322%20913%201337%20902%201350%20890%201358%20875%201364%20853%201374%20826%201391%20799%201417%20779%201450%20769%201484%20772%201514%20786%201538%20805%201557%20827%201570%20849%201580%20870%201586%20890%201585%20911%201580%20929%201572%20946Z'/%3E%3Cpath%20d='M1588%20960%201589%20976%201599%20995%201614%201020%201627%201051%201629%201084%201616%201113%201590%201134%201555%201145%201518%201146%201483%201144%201450%201142%201418%201140%201385%201136%201354%201129%201326%201114%201306%201093%201293%201069%201285%201045%201279%201022%201272%201002%201265%20981%201260%20960%201262%20938%201273%20919%201291%20902%201310%20888%201325%20873%201336%20854%201345%20829%201357%20798%201379%20766%201411%20743%201450%20732%201490%20736%201526%20752%201555%20776%201576%20803%201592%20829%201604%20853%201610%20878%201609%20902%201603%20924%201594%20943Z'/%3E%3Cpath%20d='M1609%20960%201612%20979%201625%201001%201644%201031%201660%201068%201663%201108%201648%201143%201617%201168%201576%201180%201532%201182%201489%201178%201450%201173%201412%201169%201375%201163%201340%201152%201310%201135%201287%201110%201273%201083%201264%201055%201256%201031%201246%201008%201235%20985%201227%20960%201227%20934%201238%20910%201257%20890%201280%20872%201299%20855%201313%20833%201325%20804%201341%20769%201367%20734%201405%20707%201450%20695%201497%20701%201538%20721%201571%20749%201595%20779%201614%20809%201626%20838%201633%20866%201633%20893%201626%20919%201616%20941Z'/%3E%3Cpath%20d='M1631%20960%201635%20981%201652%201007%201675%201042%201694%201085%201698%201132%201681%201174%201645%201203%201597%201217%201545%201219%201495%201213%201450%201205%201407%201198%201366%201189%201327%201175%201295%201153%201271%201125%201256%201095%201245%201065%201235%201039%201221%201014%201205%20988%201192%20960%201190%20930%201200%20901%201222%20877%201247%20856%201271%20836%201288%20811%201304%20778%201324%20739%201355%20701%201398%20672%201450%20660%201503%20668%201549%20690%201586%20722%201613%20757%201634%20790%201649%20822%201657%20854%201656%20885%201649%20913%201638%20938Z'/%3E%3Cpath%20d='M1654%20960%201660%20984%201680%201014%201707%201054%201729%201103%201734%201157%201715%201205%201674%201238%201618%201254%201558%201255%201502%201247%201450%201237%201402%201226%201357%201214%201315%201196%201281%201171%201256%201139%201240%201106%201228%201074%201215%201046%201196%201020%201174%20992%201156%20960%201150%20926%201160%20892%201183%20863%201213%20838%201241%20815%201263%20787%201283%20752%201307%20710%201343%20669%201392%20639%201450%20627%201508%20636%201559%20662%201600%20698%201630%20736%201653%20772%201670%20807%201680%20842%201680%20876%201672%20908%201661%20936Z'/%3E%3Cpath%20d='M724%2080%20727%2083%20729%2087%20730%2091%20728%2095%20725%2097%20720%2098%20715%2099%20711%2099%20707%2098%20703%2098%20700%2098%20697%2098%20694%2097%20691%2095%20689%2093%20687%2092%20685%2091%20682%2089%20679%2088%20677%2086%20675%2083%20675%2080%20676%2077%20677%2075%20678%2072%20679%2069%20680%2066%20681%2062%20683%2059%20687%2057%20691%2056%20696%2057%20700%2059%20703%2061%20706%2063%20708%2065%20710%2067%20712%2069%20714%2071%20715%2072%20716%2074%20718%2076%20720%2078Z'/%3E%3Cpath%20d='M748%2080%20755%2086%20760%2094%20761%20102%20757%20109%20750%20115%20740%20117%20730%20118%20721%20117%20713%20116%20706%20116%20700%20115%20694%20114%20688%20112%20683%20109%20679%20106%20675%20104%20669%20101%20663%2099%20657%2096%20652%2091%20648%2086%20648%2080%20650%2074%20653%2069%20656%2064%20658%2058%20659%2052%20662%2045%20667%2039%20674%2035%20683%2033%20692%2035%20700%2039%20707%2043%20712%2047%20717%2051%20721%2054%20725%2057%20728%2061%20730%2065%20732%2068%20736%2072%20741%2075Z'/%3E%3Cpath%20d='M773%2080%20783%2090%20790%20101%20792%20114%20786%20124%20775%20132%20760%20136%20745%20136%20731%20135%20720%20134%20709%20133%20700%20132%20691%20130%20683%20127%20676%20123%20669%20118%20662%20115%20654%20112%20644%20109%20634%20104%20625%2098%20620%2089%20619%2080%20623%2071%20628%2063%20632%2055%20636%2047%20640%2038%20644%2028%20652%2020%20662%2014%20675%2012%20688%2014%20700%2019%20710%2026%20718%2031%20725%2036%20731%2041%20737%2046%20742%2051%20746%2056%20750%2062%20755%2067%20763%2073Z'/%3E%3Cpath%20d='M799%2080%20812%2093%20822%20109%20823%20125%20816%20139%20800%20149%20780%20154%20760%20154%20741%20152%20726%20150%20712%20149%20700%20147%20688%20144%20678%20140%20668%20135%20660%20130%20650%20126%20638%20123%20624%20119%20610%20113%20597%20104%20590%2093%20589%2080%20594%2068%20601%2057%20609%2047%20615%2036%20620%2025%20627%2012%20637%201%20651%20-6%20668%20-8%20685%20-5%20700%201%20713%209%20724%2016%20733%2022%20742%2027%20751%2033%20757%2040%20763%2048%20768%2055%20775%2062%20786%2070Z'/%3E%3Cpath%20d='M825%2080%20841%2096%20853%20116%20855%20136%20845%20154%20825%20167%20800%20172%20774%20172%20751%20169%20732%20166%20715%20164%20700%20161%20686%20158%20673%20153%20661%20148%20650%20142%20638%20137%20622%20134%20604%20129%20584%20122%20568%20111%20558%2096%20557%2080%20563%2064%20574%2050%20584%2038%20593%2025%20601%2011%20610%20-3%20623%20-16%20640%20-25%20661%20-27%20681%20-23%20700%20-16%20716%20-7%20729%201%20742%207%20754%2013%20765%2020%20774%2029%20781%2038%20788%2048%20796%2057%20809%2067Z'/%3E%3Cpath%20d='M852%2080%20871%20100%20884%20123%20886%20148%20873%20169%20849%20184%20819%20190%20788%20190%20760%20186%20737%20181%20718%20178%20700%20175%20684%20171%20668%20166%20655%20160%20641%20153%20625%20149%20606%20145%20582%20140%20558%20132%20537%20118%20524%20100%20523%2080%20532%2061%20546%2044%20560%2029%20572%2014%20583%20-1%20594%20-17%20610%20-32%20631%20-42%20654%20-44%20678%20-40%20700%20-32%20718%20-23%20735%20-15%20750%20-8%20765%20-1%20779%207%20791%2017%20800%2029%20808%2040%20819%2052%20833%2065Z'/%3E%3Cpath%20d='M879%2080%20900%20103%20915%20130%20916%20159%20901%20183%20873%20200%20838%20207%20801%20206%20769%20202%20743%20196%20720%20192%20700%20189%20681%20184%20664%20178%20648%20171%20632%20165%20613%20161%20589%20157%20560%20152%20530%20142%20504%20126%20490%20104%20488%2080%20499%2057%20517%2037%20535%2020%20551%204%20565%20-13%20580%20-31%20598%20-47%20622%20-57%20648%20-60%20676%20-56%20700%20-48%20721%20-38%20740%20-30%20759%20-23%20778%20-17%20795%20-8%20810%204%20821%2018%20830%2032%20842%2047%20858%2062Z'/%3E%3Cpath%20d='M907%2080%20930%20106%20945%20138%20945%20170%20928%20197%20896%20216%20855%20224%20814%20222%20778%20217%20748%20210%20723%20206%20700%20202%20679%20197%20659%20191%20641%20183%20622%20177%20600%20173%20571%20169%20537%20164%20501%20153%20471%20134%20454%20108%20452%2080%20466%2053%20487%2030%20511%2011%20531%20-7%20548%20-25%20566%20-44%20587%20-60%20613%20-72%20643%20-75%20673%20-71%20700%20-62%20724%20-53%20746%20-45%20768%20-39%20791%20-33%20812%20-23%20830%20-10%20843%207%20854%2024%20866%2041%20884%2059Z'/%3E%3Cpath%20d='M934%2080%20958%20110%20974%20144%20974%20180%20954%20211%20918%20231%20872%20239%20827%20238%20786%20231%20753%20224%20725%20219%20700%20215%20677%20210%20655%20203%20634%20196%20612%20189%20586%20185%20553%20182%20513%20176%20471%20164%20436%20142%20416%20113%20416%2080%20432%2049%20458%2023%20486%202%20511%20-17%20533%20-36%20553%20-56%20577%20-73%20606%20-85%20638%20-88%20670%20-84%20700%20-76%20727%20-67%20752%20-61%20778%20-56%20805%20-50%20830%20-40%20851%20-25%20867%20-6%20879%2015%20892%2035%20911%2056Z'/%3E%3C/g%3E%3C/svg%3E");
}
:root[data-design="standard"][data-theme="dark"] {
  --bg: #0a0a0b; --card: #131315; --text: #f4f4f5; --text-2: #a0a0a8; --text-3: #6c6c74;
  --sep: rgba(255, 255, 255, .08); --fill: rgba(255, 255, 255, .07); --fill-2: rgba(255, 255, 255, .04);
  --blue: #c5f82a; --blue-soft: rgba(197, 248, 42, .13);
  --glass-rgb: 20, 20, 22; --glass-border: rgba(255, 255, 255, .08); --glass-hi: rgba(255, 255, 255, .06); --glass-edge: rgba(0, 0, 0, .6);
  --blob-1: rgba(170, 235, 40, .20); --blob-2: rgba(120, 200, 30, .07); --blob-3: rgba(255, 255, 255, .02);
}
@media (prefers-color-scheme: dark) {
  :root[data-design="standard"]:not([data-theme="light"]) {
    --bg: #0a0a0b; --card: #131315; --text: #f4f4f5; --text-2: #a0a0a8; --text-3: #6c6c74;
    --sep: rgba(255, 255, 255, .08); --fill: rgba(255, 255, 255, .07); --fill-2: rgba(255, 255, 255, .04);
    --blue: #c5f82a; --blue-soft: rgba(197, 248, 42, .13);
    --glass-rgb: 20, 20, 22; --glass-border: rgba(255, 255, 255, .08); --glass-hi: rgba(255, 255, 255, .06); --glass-edge: rgba(0, 0, 0, .6);
    --blob-1: rgba(170, 235, 40, .20); --blob-2: rgba(120, 200, 30, .07); --blob-3: rgba(255, 255, 255, .02);
  }
}

/* Фон: рельеф, свечение над экраном и ореол у логотипа (слева сверху) */
[data-design="standard"] .backdrop {
  background:
    radial-gradient(900px 420px at 50% -160px, var(--blob-1), transparent 70%),
    radial-gradient(45vw 45vw at 100% 30%, var(--blob-2), transparent 60%),
    radial-gradient(60vw 40vw at 60% 110%, var(--blob-3), transparent 60%),
    var(--bg);
}
[data-design="standard"] .backdrop::before {
  content: ""; position: absolute; inset: 0; background: var(--topo) center / cover no-repeat; opacity: .9;
}
[data-design="standard"][data-theme="light"] .backdrop::before { filter: invert(1); opacity: .7; }
@media (prefers-color-scheme: light) {
  [data-design="standard"]:not([data-theme="dark"]) .backdrop::before { filter: invert(1); opacity: .7; }
}
[data-design="standard"] .backdrop::after {
  content: ""; position: absolute; width: 480px; height: 480px; left: -150px; top: -170px; border-radius: 50%;
  background: radial-gradient(circle, rgba(197, 248, 42, .38), rgba(160, 230, 40, .12) 40%, transparent 68%);
  filter: blur(30px); animation: gl-halo 5.5s ease-in-out infinite;
}
@keyframes gl-halo { 0%, 100% { opacity: .7; transform: scale(1); } 50% { opacity: 1; transform: scale(1.15); } }

/* Логотип: салатовый, пульсирует свечением, по краю бежит блик */
[data-design="standard"] .brand-logo {
  position: relative; color: var(--on-accent); background: linear-gradient(135deg, #e2ff6b, var(--accent) 45%, var(--accent-2));
  box-shadow: 0 0 14px rgba(197, 248, 42, .45); animation: gl-mark 5.5s ease-in-out infinite;
}
[data-design="standard"] .brand-logo::after {
  content: ""; position: absolute; inset: -2px; border-radius: 12px; padding: 2px; pointer-events: none;
  background: conic-gradient(from var(--gl-spin, 0deg), transparent 0 70%, rgba(255, 255, 255, .9) 80%, transparent 90%);
  -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0); -webkit-mask-composite: xor; mask-composite: exclude;
  animation: gl-spin 4s linear infinite;
}
@property --gl-spin { syntax: "<angle>"; inherits: false; initial-value: 0deg; }
@keyframes gl-spin { to { --gl-spin: 360deg; } }
@keyframes gl-mark { 0%, 100% { box-shadow: 0 0 14px rgba(197, 248, 42, .45), 0 0 36px rgba(197, 248, 42, .18); } 50% { box-shadow: 0 0 22px rgba(197, 248, 42, .75), 0 0 64px rgba(197, 248, 42, .32); } }

/* Акцентные элементы: салатовая заливка с тёмным текстом, как кнопки сайта */
[data-design="standard"] .btn-primary,
[data-design="standard"] .bubble.out { background: var(--accent); color: var(--on-accent); }
[data-design="standard"] .btn-primary:hover { background: #d4ff4a; box-shadow: 0 0 0 4px rgba(197, 248, 42, .15), 0 8px 24px rgba(170, 235, 40, .3); }
[data-design="standard"] .nav-item.active { box-shadow: inset 0 0 0 1px rgba(197, 248, 42, .25); }
[data-design="standard"] input[type="range"] { accent-color: var(--accent-2); }

@media (prefers-reduced-motion: reduce) {
  [data-design="standard"] .brand-logo, [data-design="standard"] .brand-logo::after, [data-design="standard"] .backdrop::after { animation: none; }
}
[data-design="standard"] .bar-fill { background: linear-gradient(90deg, var(--accent-2), var(--accent)); }

/* ─── Дашборд инженера: плашка «Ближайшие сроки и напоминания» справа сверху.
   Ширина — ровно два блока с цифрами ниже (5 блоков в ряд, зазор 12px). */
.eng-top { display: grid; grid-template-columns: minmax(0, 1fr); gap: 12px; align-items: start; margin-bottom: 18px; }
.eng-top.with-rems { grid-template-columns: minmax(0, 1fr) calc((100% - 48px) / 5 * 2 + 12px); }
.eng-top .eng-hero { margin-bottom: 0; }
.eng-kpis { grid-template-columns: repeat(5, minmax(0, 1fr)); }
.eng-rems { border-radius: 20px; padding: 12px; }
.eng-rems-title { display: flex; align-items: center; gap: 8px; font-size: 14px; font-weight: 700; margin: 2px 4px 10px; }
.eng-rems-title svg { color: var(--blue); }
.eng-rems-list { max-height: 232px; overflow-y: auto; }
.eng-rems-list .row { min-height: 40px; padding: 8px 12px; font-size: 14px; }
.eng-rems-list .value { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
@media (max-width: 1100px) {
  .eng-top.with-rems { grid-template-columns: minmax(0, 1fr); }
  .eng-kpis { grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); }
}

/* ─── Фильтр столбца, как в Excel: клик по заголовку */
table.col-filter th { cursor: pointer; user-select: none; white-space: nowrap; }
table.col-filter th::after { content: ""; display: inline-block; width: 7px; height: 7px; margin-left: 7px; vertical-align: 2px;
  border-right: 1.6px solid currentColor; border-bottom: 1.6px solid currentColor; transform: rotate(45deg); opacity: .45; }
table.col-filter th:hover { color: var(--text); }
table.col-filter th:hover::after { opacity: .9; }
table.col-filter th[data-dir]::after { content: "↑"; width: auto; height: auto; border: 0; transform: none; opacity: 1; color: var(--blue); }
table.col-filter th[data-dir="desc"]::after { content: "↓"; }
table.col-filter th.filtered { color: var(--blue); }
table.col-filter th.filtered::before { content: ""; display: inline-block; width: 7px; height: 7px; border-radius: 50%; background: var(--blue); margin-right: 6px; vertical-align: 1px; box-shadow: 0 0 8px var(--blue); }
.col-pop { position: fixed; z-index: 80; width: 300px; border-radius: 18px; padding: 12px; --glass-alpha: .96;
  box-shadow: inset 0 1px 0 var(--glass-hi), inset 0 0 0 .5px var(--glass-edge), var(--shadow-lg); animation: pop-in .18s cubic-bezier(.2, .9, .25, 1); }
.col-pop-title { font-weight: 700; font-size: 14px; margin: 2px 4px 10px; }
.col-sort { display: grid; gap: 4px; margin-bottom: 10px; }
.col-sort button { display: flex; align-items: center; gap: 8px; border: 0; background: transparent; border-radius: 10px; padding: 8px 10px; font-size: 14px; color: var(--text); text-align: left; }
.col-sort button:hover { background: var(--fill-2); }
.col-sort button.on { background: var(--blue-soft); color: var(--blue); font-weight: 600; }
.col-sort button:last-child svg { transform: scaleY(-1); }
.col-search { display: flex; align-items: center; gap: 8px; border-radius: 12px; padding: 8px 12px; background: var(--fill-2); border: 1.5px solid var(--sep); color: var(--text-2); }
.col-search:focus-within { border-color: var(--blue); box-shadow: 0 0 0 3px var(--blue-soft); }
.col-search input { flex: 1; min-width: 0; border: 0; outline: 0; background: transparent; font-size: 15px; color: var(--text); }
.col-list { max-height: 260px; overflow-y: auto; margin: 10px 0 4px; padding: 2px 0; }
.col-item { display: flex; align-items: center; gap: 10px; padding: 6px 8px; border-radius: 8px; font-size: 14px; cursor: pointer; }
.col-item:hover { background: var(--fill-2); }
.col-item input { width: 18px; height: 18px; margin: 0; flex: none; accent-color: var(--accent-2, var(--blue)); }
.col-item span { flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.col-item em { font-style: normal; font-size: 12px; color: var(--text-3); }
.col-item.all span { font-weight: 600; }
.filter-note { display: flex; align-items: center; gap: 6px; font-size: 13px; color: var(--text-2); margin: 0 0 8px 4px; }
.filter-note svg { color: var(--blue); }
.link-btn { border: 0; background: none; padding: 0; color: var(--blue); font-size: 13px; cursor: pointer; }
.link-btn:hover { text-decoration: underline; }

/* ─── Строка документа: «Заменить» и под ней «Печать» */
.doc-btns { display: flex; flex-direction: column; align-items: flex-end; gap: 2px; flex: none; }
.doc-btns .btn { white-space: nowrap; }

/* Кнопка «← На сайт» в демо, открытом с сайта */
.back-to-site { position: fixed; left: 50%; bottom: 18px; transform: translateX(-50%); z-index: 60; padding: 9px 18px; border-radius: 999px;
  font-size: 14px; font-weight: 600; color: var(--text); text-decoration: none; }
.back-to-site:hover { text-decoration: none; color: var(--blue); }
@media (max-width: 760px) { .back-to-site { bottom: 86px; } }

/* ─── Распределение позиций скана и подпись инженера ОМТС ─────────────────── */
.pick-table th.pick, .pick-table td.pick { width: 34px; text-align: center; }
.pick-table input[type="checkbox"] { width: 18px; height: 18px; accent-color: var(--blue); cursor: pointer; vertical-align: middle; }
.pick-table tr.picked td { background: color-mix(in srgb, var(--blue) 10%, transparent); }
.pick-table tr.taken td { color: var(--text-2); }
.pick-table tr.taken input[type="checkbox"] { accent-color: var(--green); cursor: default; }
.taker { color: var(--green); font-size: 13px; }
.taker svg { vertical-align: -2px; }
.sign-stamps { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 8px; margin-top: 14px; }
.sign-stamp { width: 270px; max-width: 100%; padding: 7px 11px; border: 1.5px solid #1c3f94; border-radius: 8px; color: #1c3f94;
  background: #fff; font: 12px/1.35 -apple-system, "Segoe UI", sans-serif; text-align: left; }
.ss-role { font-weight: 700; text-transform: uppercase; letter-spacing: .04em; font-size: 10.5px; }
.ss-sign { display: flex; align-items: flex-end; gap: 6px; min-height: 36px; border-bottom: 1px solid currentColor; margin: 2px 0 3px; white-space: nowrap; }
.ss-sign img { height: 36px; max-width: 45%; object-fit: contain; object-position: left bottom; }
.ss-sign > span:last-child { min-width: 0; overflow: hidden; text-overflow: ellipsis; }
.ss-script { font: italic 24px/1 "Snell Roundhand", "Segoe Script", "Brush Script MT", cursive; }
.ss-meta { font-size: 10.5px; opacity: .85; }
.paper-mark-cell { color: #1c3f94 !important; white-space: nowrap; }
.sign-pad { display: block; width: 100%; aspect-ratio: 1000 / 360; background: #fff; border-radius: 16px; touch-action: none; cursor: crosshair;
  box-shadow: inset 0 0 0 1px rgba(0, 0, 0, .12); }
.sign-preview { height: 40px; max-width: 160px; object-fit: contain; background: #fff; border-radius: 8px; padding: 2px 8px; }
.sign-stamp.empty { border-style: dashed; opacity: .75; }
.sign-who { flex-wrap: wrap; gap: 12px; }
.sign-table tr.clickable { cursor: pointer; }
.sign-detail { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 20px; align-items: start; margin-top: 18px; }
.sign-doc { border-radius: 26px; padding: 10px; }
.pdf-box.portrait { aspect-ratio: 1 / 1.414; background: #fff; }
.pdf-box.portrait iframe { position: absolute; inset: 0; width: 100%; height: 100%; transform: none; border: 0; }
@media (max-width: 1100px) { .sign-detail { grid-template-columns: minmax(0, 1fr); } }
.pick-table tr.returned td { background: color-mix(in srgb, var(--orange) 9%, transparent); }
.ret-mark { color: var(--orange); font-size: 13px; }
.ret-mark svg { vertical-align: -2px; }
/* Позиции скана: текст целиком, ширина колонок — перетаскиванием края заголовка */
.scan-items table { width: 100%; }
.scan-items th[data-col] { white-space: nowrap; }
.scan-items th[data-col="name"] { min-width: 180px; }
.th-grip { position: absolute; top: 6px; bottom: 6px; right: -3px; width: 7px; cursor: col-resize; border-radius: 4px; z-index: 3; }
.th-grip:hover, body.resizing .th-grip { background: var(--blue-soft); }
textarea.cell-input { display: block; resize: none; overflow: hidden; font: inherit; font-size: 14px; line-height: 1.4; white-space: pre-wrap; word-break: break-word; min-height: 24px; }
.scan-items td { word-break: break-word; }
.rem-ico.ret { background: var(--red); }
/* Позиции скана: короткие колонки — по содержимому, «Наименование» — всё остальное место */
.scan-items :is(th, td) { padding: 8px 10px; }
.scan-items :is(.c-no, .c-qty, .c-unit, .c-who):not([style*="width"]) { width: 1%; white-space: nowrap; }
.scan-items td.c-qty .cell-input { width: 7ch; min-width: 0; }
.scan-items td.c-unit .cell-input { width: 6ch; min-width: 0; }
/* Группа заявок на доске — стопка карточек */
.card.group-card { box-shadow: 0 5px 0 -2px color-mix(in srgb, var(--text) 16%, transparent), 0 10px 0 -4px color-mix(in srgb, var(--text) 9%, transparent); margin-bottom: 18px; border: 1px solid color-mix(in srgb, var(--blue) 45%, transparent); }
.grp-list { font-size: 12.5px; color: var(--text-2); margin: 6px 0 2px; line-height: 1.45; }
.pick-row { cursor: pointer; align-items: flex-start; }
.pick-row input { margin-top: 3px; width: 18px; height: 18px; accent-color: var(--blue); flex: none; }
