/* ====== FONTS ====== */
@font-face {
  font-family: 'SF Pro Text';
  src: url('../fonts/sf-pro-text-11.otf') format('opentype'),
       url('../fonts/sf-pro-text-11.ttf') format('truetype'),
       url('../fonts/sf-pro-text-11.woff2') format('woff2'),
       url('../fonts/sf-pro-text-11.woff') format('woff');
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}

/* ====== DESIGN TOKENS ====== */
:root{
  /* цвета и базовые токены */
  --bg:#F3F3F0;
  /* как у карточки «Саммари» (.tasks-alt-summary); страничный фон — эксперимент */
  --bg-summary-gradient:linear-gradient(180deg, rgba(41,163,177,0.45) 0%, rgba(18,225,149,0.22) 100%);
  /*
   * Обводки блоков — один базовый цвет (#B5D5D6) и разная прозрачность.
   * Сменить оттенок: переведите hex в три числа R,G,B и подставьте в --block-border-rgb
   * (пример #B5D5D6 → 181, 213, 214).
   */
  --block-border-rgb: 181, 213, 214;

  --block-border-frosted: rgba(var(--block-border-rgb), 0.58);   /* матовые карточки на градиенте */
  --block-border-panel: rgba(var(--block-border-rgb), 0.70);    /* серые панели, поля, стикеры */
  --block-border-muted: rgba(var(--block-border-rgb), 0.48);    /* мягче контур */
  --block-border-divider: rgba(var(--block-border-rgb), 0.38); /* разделители, лёгкая обводка */
  --block-border-hover: rgba(var(--block-border-rgb), 0.88);    /* hover у плиток календаря */
  --block-border-focus: rgba(var(--block-border-rgb), 0.96);   /* focus у полей ввода */
  --block-border-dashed: rgba(var(--block-border-rgb), 0.64); /* пунктирные слоты */

  /* поверхность карточки приоритета (.priority-task-card) — для остальных блоков compare */
  --priority-task-card-surface-bg:rgba(255,255,255,0.35);
  --priority-task-card-surface-border:1px solid var(--block-border-frosted);
  --priority-task-card-surface-radius:14px;
  --ink:#141922;
  --acc:#E46402;
  --muted:#262626;
  --panel:#ffffff;
  --vio:#F2E1F9;
  --radius:18px;
  --shadow:0 10px 30px rgba(0,0,0,.06);

  /* шрифты */
  --font-body: "Inter", ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Arial;
  --font-heading: 'SF Pro Text', var(--font-body);

  /* логотип и выравнивание контента */
  --logo-size: 36px;      /* ← размер логотипа */
  --hero-left-pad: 60px;  /* ← отступ слева для всех элементов */

  /* фон-элемент PNG */
  --hero-el-size: 820px;  /* ← масштаб PNG (меняй по вкусу) */
  --hero-el-left: -200px; /* ← сдвиг по X (– влево, + вправо) */
  --hero-el-top:  -140px; /* ← сдвиг по Y (– вверх, + вниз) */
  
  /* скругления */
  --features-content-radius: 40px;  /* ← скругление только правого блока (меняй по вкусу) */
  --features-radius: 4px;  /* ← скругление кнопок и других элементов */

  /* Левая навигационная панель (вместо верхнего хедера) */
  --app-nav-rail-width:88px;
  --app-nav-rail-bg:#4f9ea3;
  --app-nav-rail-niche-pad-x:0px;
}

/* ====== BASE ====== */
*{box-sizing:border-box}
html,body{height:100%}
html{scroll-behavior:auto !important}
body{scroll-behavior:auto !important}
body{
  margin:0; color:var(--ink);
  background-color:#fff;
  background-image:var(--bg-summary-gradient);
  background-attachment:fixed;
  font:16px/1.55 var(--font-body);
  -webkit-font-smoothing:antialiased;
}
body.has-app-nav-rail{
  padding-left:var(--app-nav-rail-width);
}
body.has-app-nav-rail section.app:not(.app--layout-compare-wrap){
  padding-top:76px !important;
}
body.has-app-nav-rail .app:not(.app--layout-compare-wrap){
  padding-top:76px;
}

/* Фиксированная левая навигация (эксперимент: без верхнего хедера) */
.app-nav-rail{
  position:fixed;
  top:0;
  left:0;
  z-index:1100;
  width:var(--app-nav-rail-width);
  height:100vh;
  height:100dvh;
  box-sizing:border-box;
  /* Вертикальные поля сверху и снизу одинаковые (воздух до домика ≈ воздух до нижней иконки) */
  padding:76px 0 76px;
  background:transparent;
  display:flex;
  flex-direction:column;
  align-items:stretch;
  gap:0;
  overflow:visible;
  box-shadow:none;
}
/* Бирюза — отдельный слой с маской: в зоне кармана прозрачно → виден фон страницы, не «плашка поверх» */
.app-nav-rail::before{
  content:'';
  position:absolute;
  left:0;
  top:0;
  width:var(--app-nav-rail-width);
  height:100%;
  background:var(--app-nav-rail-bg);
  border-radius:0;
  transform:translateZ(0);
  box-shadow:none;
  pointer-events:none;
  z-index:0;
  /* Прямой столбец минус дыра; mask-type=alpha + CSS alpha — меньше серой «каши» по краю, чем luminance */
  -webkit-mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%3E%3Cmask%20id%3D%27m%27%20maskUnits%3D%27objectBoundingBox%27%20maskContentUnits%3D%27objectBoundingBox%27%20mask-type%3D%27alpha%27%3E%3Crect%20width%3D%271%27%20height%3D%271%27%20fill%3D%27white%27%2F%3E%3Cpath%20fill%3D%27black%27%20d%3D%27M%200.1580%2C0.0840%20L%200.8500%2C0.0840%20C%200.93%2C0.0840%201%2C0.0640%201%2C0.1060%20L%201%2C0.1490%20C%201%2C0.1910%200.93%2C0.1710%200.8500%2C0.1710%20L%200.1580%2C0.1710%20A%200.1000%200.0360%200%200%201%200.0580%2C0.1350%20L%200.0580%2C0.1200%20A%200.1000%200.0360%200%200%201%200.1580%2C0.0840%20Z%27%2F%3E%3C%2Fmask%3E%3Crect%20width%3D%27100%25%27%20height%3D%27100%25%27%20mask%3D%27url%28%23m%29%27%20fill%3D%27white%27%2F%3E%3C%2Fsvg%3E");
  mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%3E%3Cmask%20id%3D%27m%27%20maskUnits%3D%27objectBoundingBox%27%20maskContentUnits%3D%27objectBoundingBox%27%20mask-type%3D%27alpha%27%3E%3Crect%20width%3D%271%27%20height%3D%271%27%20fill%3D%27white%27%2F%3E%3Cpath%20fill%3D%27black%27%20d%3D%27M%200.1580%2C0.0840%20L%200.8500%2C0.0840%20C%200.93%2C0.0840%201%2C0.0640%201%2C0.1060%20L%201%2C0.1490%20C%201%2C0.1910%200.93%2C0.1710%200.8500%2C0.1710%20L%200.1580%2C0.1710%20A%200.1000%200.0360%200%200%201%200.0580%2C0.1350%20L%200.0580%2C0.1200%20A%200.1000%200.0360%200%200%201%200.1580%2C0.0840%20Z%27%2F%3E%3C%2Fmask%3E%3Crect%20width%3D%27100%25%27%20height%3D%27100%25%27%20mask%3D%27url%28%23m%29%27%20fill%3D%27white%27%2F%3E%3C%2Fsvg%3E");
  -webkit-mask-size:100% 100%;
  mask-size:100% 100%;
  -webkit-mask-repeat:no-repeat;
  mask-repeat:no-repeat;
  -webkit-mask-source-type:alpha;
  mask-mode:alpha;
}
body.has-app-nav-rail:has(.app--layout-compare-wrap):not(:has(.layout-compare-banner)) .app-nav-rail::before{
  -webkit-mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%3E%3Cmask%20id%3D%27m%27%20maskUnits%3D%27objectBoundingBox%27%20maskContentUnits%3D%27objectBoundingBox%27%20mask-type%3D%27alpha%27%3E%3Crect%20width%3D%271%27%20height%3D%271%27%20fill%3D%27white%27%2F%3E%3Cpath%20fill%3D%27black%27%20d%3D%27M%200.1580%2C0.0520%20L%200.8500%2C0.0520%20C%200.93%2C0.0520%201%2C0.0320%201%2C0.0740%20L%201%2C0.1170%20C%201%2C0.1590%200.93%2C0.1390%200.8500%2C0.1390%20L%200.1580%2C0.1390%20A%200.1000%200.0360%200%200%201%200.0580%2C0.1030%20L%200.0580%2C0.0880%20A%200.1000%200.0360%200%200%201%200.1580%2C0.0520%20Z%27%2F%3E%3C%2Fmask%3E%3Crect%20width%3D%27100%25%27%20height%3D%27100%25%27%20mask%3D%27url%28%23m%29%27%20fill%3D%27white%27%2F%3E%3C%2Fsvg%3E");
  mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%3E%3Cmask%20id%3D%27m%27%20maskUnits%3D%27objectBoundingBox%27%20maskContentUnits%3D%27objectBoundingBox%27%20mask-type%3D%27alpha%27%3E%3Crect%20width%3D%271%27%20height%3D%271%27%20fill%3D%27white%27%2F%3E%3Cpath%20fill%3D%27black%27%20d%3D%27M%200.1580%2C0.0520%20L%200.8500%2C0.0520%20C%200.93%2C0.0520%201%2C0.0320%201%2C0.0740%20L%201%2C0.1170%20C%201%2C0.1590%200.93%2C0.1390%200.8500%2C0.1390%20L%200.1580%2C0.1390%20A%200.1000%200.0360%200%200%201%200.0580%2C0.1030%20L%200.0580%2C0.0880%20A%200.1000%200.0360%200%200%201%200.1580%2C0.0520%20Z%27%2F%3E%3C%2Fmask%3E%3Crect%20width%3D%27100%25%27%20height%3D%27100%25%27%20mask%3D%27url%28%23m%29%27%20fill%3D%27white%27%2F%3E%3C%2Fsvg%3E");
}
body.has-app-nav-rail:has(.app--layout-compare-wrap):has(.layout-compare-banner) .app-nav-rail::before{
  -webkit-mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%3E%3Cmask%20id%3D%27m%27%20maskUnits%3D%27objectBoundingBox%27%20maskContentUnits%3D%27objectBoundingBox%27%20mask-type%3D%27alpha%27%3E%3Crect%20width%3D%271%27%20height%3D%271%27%20fill%3D%27white%27%2F%3E%3Cpath%20fill%3D%27black%27%20d%3D%27M%200.1580%2C0.1080%20L%200.8500%2C0.1080%20C%200.93%2C0.1080%201%2C0.0880%201%2C0.1300%20L%201%2C0.1730%20C%201%2C0.2150%200.93%2C0.1950%200.8500%2C0.1950%20L%200.1580%2C0.1950%20A%200.1000%200.0360%200%200%201%200.0580%2C0.1590%20L%200.0580%2C0.1440%20A%200.1000%200.0360%200%200%201%200.1580%2C0.1080%20Z%27%2F%3E%3C%2Fmask%3E%3Crect%20width%3D%27100%25%27%20height%3D%27100%25%27%20mask%3D%27url%28%23m%29%27%20fill%3D%27white%27%2F%3E%3C%2Fsvg%3E");
  mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%3E%3Cmask%20id%3D%27m%27%20maskUnits%3D%27objectBoundingBox%27%20maskContentUnits%3D%27objectBoundingBox%27%20mask-type%3D%27alpha%27%3E%3Crect%20width%3D%271%27%20height%3D%271%27%20fill%3D%27white%27%2F%3E%3Cpath%20fill%3D%27black%27%20d%3D%27M%200.1580%2C0.1080%20L%200.8500%2C0.1080%20C%200.93%2C0.1080%201%2C0.0880%201%2C0.1300%20L%201%2C0.1730%20C%201%2C0.2150%200.93%2C0.1950%200.8500%2C0.1950%20L%200.1580%2C0.1950%20A%200.1000%200.0360%200%200%201%200.0580%2C0.1590%20L%200.0580%2C0.1440%20A%200.1000%200.0360%200%200%201%200.1580%2C0.1080%20Z%27%2F%3E%3C%2Fmask%3E%3Crect%20width%3D%27100%25%27%20height%3D%27100%25%27%20mask%3D%27url%28%23m%29%27%20fill%3D%27white%27%2F%3E%3C%2Fsvg%3E");
}
@media (max-width:480px){
  body.has-app-nav-rail:not(:has(.app--layout-compare-wrap)) .app-nav-rail::before{
    -webkit-mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%3E%3Cmask%20id%3D%27m%27%20maskUnits%3D%27objectBoundingBox%27%20maskContentUnits%3D%27objectBoundingBox%27%20mask-type%3D%27alpha%27%3E%3Crect%20width%3D%271%27%20height%3D%271%27%20fill%3D%27white%27%2F%3E%3Cpath%20fill%3D%27black%27%20d%3D%27M%200.1580%2C0.0760%20L%200.8500%2C0.0760%20C%200.93%2C0.0760%201%2C0.0560%201%2C0.0980%20L%201%2C0.1410%20C%201%2C0.1830%200.93%2C0.1630%200.8500%2C0.1630%20L%200.1580%2C0.1630%20A%200.1000%200.0360%200%200%201%200.0580%2C0.1270%20L%200.0580%2C0.1120%20A%200.1000%200.0360%200%200%201%200.1580%2C0.0760%20Z%27%2F%3E%3C%2Fmask%3E%3Crect%20width%3D%27100%25%27%20height%3D%27100%25%27%20mask%3D%27url%28%23m%29%27%20fill%3D%27white%27%2F%3E%3C%2Fsvg%3E");
    mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%3E%3Cmask%20id%3D%27m%27%20maskUnits%3D%27objectBoundingBox%27%20maskContentUnits%3D%27objectBoundingBox%27%20mask-type%3D%27alpha%27%3E%3Crect%20width%3D%271%27%20height%3D%271%27%20fill%3D%27white%27%2F%3E%3Cpath%20fill%3D%27black%27%20d%3D%27M%200.1580%2C0.0760%20L%200.8500%2C0.0760%20C%200.93%2C0.0760%201%2C0.0560%201%2C0.0980%20L%201%2C0.1410%20C%201%2C0.1830%200.93%2C0.1630%200.8500%2C0.1630%20L%200.1580%2C0.1630%20A%200.1000%200.0360%200%200%201%200.0580%2C0.1270%20L%200.0580%2C0.1120%20A%200.1000%200.0360%200%200%201%200.1580%2C0.0760%20Z%27%2F%3E%3C%2Fmask%3E%3Crect%20width%3D%27100%25%27%20height%3D%27100%25%27%20mask%3D%27url%28%23m%29%27%20fill%3D%27white%27%2F%3E%3C%2Fsvg%3E");
  }
  body.has-app-nav-rail:has(.app--layout-compare-wrap):not(:has(.layout-compare-banner)) .app-nav-rail::before{
    -webkit-mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%3E%3Cmask%20id%3D%27m%27%20maskUnits%3D%27objectBoundingBox%27%20maskContentUnits%3D%27objectBoundingBox%27%20mask-type%3D%27alpha%27%3E%3Crect%20width%3D%271%27%20height%3D%271%27%20fill%3D%27white%27%2F%3E%3Cpath%20fill%3D%27black%27%20d%3D%27M%200.1580%2C0.0490%20L%200.8500%2C0.0490%20C%200.93%2C0.0490%201%2C0.0290%201%2C0.0710%20L%201%2C0.1140%20C%201%2C0.1560%200.93%2C0.1360%200.8500%2C0.1360%20L%200.1580%2C0.1360%20A%200.1000%200.0360%200%200%201%200.0580%2C0.1000%20L%200.0580%2C0.0850%20A%200.1000%200.0360%200%200%201%200.1580%2C0.0490%20Z%27%2F%3E%3C%2Fmask%3E%3Crect%20width%3D%27100%25%27%20height%3D%27100%25%27%20mask%3D%27url%28%23m%29%27%20fill%3D%27white%27%2F%3E%3C%2Fsvg%3E");
    mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%3E%3Cmask%20id%3D%27m%27%20maskUnits%3D%27objectBoundingBox%27%20maskContentUnits%3D%27objectBoundingBox%27%20mask-type%3D%27alpha%27%3E%3Crect%20width%3D%271%27%20height%3D%271%27%20fill%3D%27white%27%2F%3E%3Cpath%20fill%3D%27black%27%20d%3D%27M%200.1580%2C0.0490%20L%200.8500%2C0.0490%20C%200.93%2C0.0490%201%2C0.0290%201%2C0.0710%20L%201%2C0.1140%20C%201%2C0.1560%200.93%2C0.1360%200.8500%2C0.1360%20L%200.1580%2C0.1360%20A%200.1000%200.0360%200%200%201%200.0580%2C0.1000%20L%200.0580%2C0.0850%20A%200.1000%200.0360%200%200%201%200.1580%2C0.0490%20Z%27%2F%3E%3C%2Fmask%3E%3Crect%20width%3D%27100%25%27%20height%3D%27100%25%27%20mask%3D%27url%28%23m%29%27%20fill%3D%27white%27%2F%3E%3C%2Fsvg%3E");
  }
  body.has-app-nav-rail:has(.app--layout-compare-wrap):has(.layout-compare-banner) .app-nav-rail::before{
    -webkit-mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%3E%3Cmask%20id%3D%27m%27%20maskUnits%3D%27objectBoundingBox%27%20maskContentUnits%3D%27objectBoundingBox%27%20mask-type%3D%27alpha%27%3E%3Crect%20width%3D%271%27%20height%3D%271%27%20fill%3D%27white%27%2F%3E%3Cpath%20fill%3D%27black%27%20d%3D%27M%200.1580%2C0.1140%20L%200.8500%2C0.1140%20C%200.93%2C0.1140%201%2C0.0940%201%2C0.1360%20L%201%2C0.1790%20C%201%2C0.2210%200.93%2C0.2010%200.8500%2C0.2010%20L%200.1580%2C0.2010%20A%200.1000%200.0360%200%200%201%200.0580%2C0.1650%20L%200.0580%2C0.1500%20A%200.1000%200.0360%200%200%201%200.1580%2C0.1140%20Z%27%2F%3E%3C%2Fmask%3E%3Crect%20width%3D%27100%25%27%20height%3D%27100%25%27%20mask%3D%27url%28%23m%29%27%20fill%3D%27white%27%2F%3E%3C%2Fsvg%3E");
    mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%3E%3Cmask%20id%3D%27m%27%20maskUnits%3D%27objectBoundingBox%27%20maskContentUnits%3D%27objectBoundingBox%27%20mask-type%3D%27alpha%27%3E%3Crect%20width%3D%271%27%20height%3D%271%27%20fill%3D%27white%27%2F%3E%3Cpath%20fill%3D%27black%27%20d%3D%27M%200.1580%2C0.1140%20L%200.8500%2C0.1140%20C%200.93%2C0.1140%201%2C0.0940%201%2C0.1360%20L%201%2C0.1790%20C%201%2C0.2210%200.93%2C0.2010%200.8500%2C0.2010%20L%200.1580%2C0.2010%20A%200.1000%200.0360%200%200%201%200.0580%2C0.1650%20L%200.0580%2C0.1500%20A%200.1000%200.0360%200%200%201%200.1580%2C0.1140%20Z%27%2F%3E%3C%2Fmask%3E%3Crect%20width%3D%27100%25%27%20height%3D%27100%25%27%20mask%3D%27url%28%23m%29%27%20fill%3D%27white%27%2F%3E%3C%2Fsvg%3E");
  }
  body.has-app-nav-rail:not(:has(.app--layout-compare-wrap)) .app-nav-rail{
    padding-top:68px;
    padding-bottom:68px;
  }
  body.has-app-nav-rail:has(.app--layout-compare-wrap):not(:has(.layout-compare-banner)) .app-nav-rail{
    padding-top:44px;
    padding-bottom:44px;
  }
  body.has-app-nav-rail:has(.app--layout-compare-wrap):has(.layout-compare-banner) .app-nav-rail{
    padding-top:calc(44px + 16px + 43px + 32px - 28px);
    padding-bottom:calc(44px + 16px + 43px + 32px - 28px);
  }
}
body.has-app-nav-rail:has(.app--layout-compare-wrap):not(:has(.layout-compare-banner)) .app-nav-rail{
  padding-top:48px;
  padding-bottom:48px;
}
body.has-app-nav-rail:has(.app--layout-compare-wrap):has(.layout-compare-banner) .app-nav-rail{
  padding-top:calc(48px + 16px + 43px + 32px - 28px);
  padding-bottom:calc(48px + 16px + 43px + 32px - 28px);
}
.app-nav-rail__top{
  position:relative;
  z-index:1;
  display:flex;
  flex-direction:column;
  align-items:stretch;
  gap:14px;
  width:100%;
  overflow:visible;
  padding:0;
  box-sizing:border-box;
}
/* Обёртка «ниши»: по бокам видна бирюза панели — светлый блок внутри как встроенный карман */
.app-nav-rail__niche{
  position:relative;
  width:100%;
  padding:0 var(--app-nav-rail-niche-pad-x);
  box-sizing:border-box;
}
.app-nav-rail__niche > .app-nav-rail__link{
  width:100%;
  min-height:54px;
  height:auto;
  border-radius:0;
}
.app-nav-rail__bottom{
  position:relative;
  z-index:1;
  margin-top:auto;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:10px;
  width:100%;
  padding-top:12px;
}
/* Прямой потомок (иконка «контакты» под нишей) — и для <button>, и для <a>; иначе ссылка остаётся 44px и прилипает влево */
.app-nav-rail__top > .app-nav-rail__link{
  align-self:stretch;
  width:100%;
  min-height:54px;
  height:auto;
  border-radius:0;
}
.app-nav-rail__link,
button.app-nav-rail__link{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:44px;
  height:44px;
  border:none;
  border-radius:0;
  color:rgba(28,40,42,0.88);
  text-decoration:none;
  background:transparent;
  cursor:pointer;
  flex-shrink:0;
  transition:background .15s ease, color .15s ease, box-shadow .15s ease;
  padding:0;
  -webkit-tap-highlight-color:transparent;
}
.app-nav-rail__link:hover:not(.app-nav-rail__link--segment-active){
  background:rgba(255,255,255,0.14);
  color:rgba(15,22,28,0.95);
}
.app-nav-rail__link:focus-visible{
  outline:2px solid rgba(255,255,255,0.85);
  outline-offset:2px;
}
.app-nav-rail__link--small{
  width:40px;
  height:40px;
  border-radius:0;
}
.app-nav-rail__link--plain:hover{
  background:rgba(255,255,255,0.12);
}
/* Выбранный раздел: светлая подложка на бирюзе (домик и остальные пункты — один стиль) */
.app-nav-rail__link--segment-active{
  background:rgba(255,255,255,0.22);
  color:rgba(15,22,28,0.96);
}
.app-nav-rail__link--segment-active:hover{
  background:rgba(255,255,255,0.28);
  color:rgba(12,18,22,0.98);
}
.app-nav-rail__link--disabled{
  opacity:0.35;
  cursor:default;
  pointer-events:none;
}
.app-nav-rail__icon{
  display:block;
  flex-shrink:0;
}
.app-nav-rail__top .app-nav-rail__icon{
  width:28px;
  height:28px;
}
/* Для сотрудников: таблица не должна расширяться шире карточки */
.table-card .list-table.list-table--no-column-resize{
  max-width:100% !important;
}
.wrap{max-width:1400px; margin:0 auto; padding:0 16px}
.app .wrap{
  max-width:none;
  width:100%;
  margin:0;
  padding-left:var(--hero-left-pad) !important;
  padding-right:var(--hero-left-pad) !important;
}
/* layout-compare: горизонтальные поля задаёт section.app.app--layout-compare-wrap (иначе section.app перебивает один класс) */
.app--layout-compare-wrap .wrap{
  /* любые внутренние .wrap не должны снова добавлять hero-left-pad */
  padding-left:0 !important;
  padding-right:0 !important;
  max-width:none !important;
  margin-left:0 !important;
  margin-right:0 !important;
}

/* ====== HEADER (только логотип, без полосы) ====== */
.site-header{
  background:transparent;
  border:0;
  box-shadow:none;
  margin:0;
  padding:0;
  height:auto;
  position:absolute;
  top:0;
  left:0;
  right:0;
  z-index:100;
  pointer-events:auto; /* Разрешаем клики */
}
.site-header .wrap{
  padding-left:var(--hero-left-pad);
  padding-right:var(--hero-left-pad);
  padding-top:40px; /* ← отступ сверху от границы до логотипа */
  display:flex;
  justify-content:space-between;
  align-items:center;
}

/* Лендинг: использовать базовые отступы шапки (без «прилипания» к краям) */
body.page-landing .site-header .wrap{
  padding:var(--hero-left-pad);
}
.header-actions{
  display:flex;
  gap:12px;
  align-items:center;
}
.header-btn{
  padding:10px 20px;
  border-radius:8px;
  text-decoration:none;
  font-size:14px;
  font-weight:500;
  transition:all 0.2s;
  pointer-events:auto;
  border:1px solid transparent;
}
.header-btn-primary{
  background:var(--acc);
  color:white;
  border-color:var(--acc);
}
.header-btn-primary:hover{
  background:#9a3456;
  border-color:#9a3456;
  color:white;
}
.header-btn-secondary{
  background:transparent;
  color:var(--ink);
  border-color:#e0e0e0;
}
.header-btn-secondary:hover{
  background:#f5f5f5;
  border-color:#d0d0d0;
}
.header-btn:not(.header-btn-primary):not(.header-btn-secondary){
  color:var(--ink);
  background:transparent;
}
.header-btn:not(.header-btn-primary):not(.header-btn-secondary):hover{
  color:var(--acc);
  background:rgba(171,59,97,0.05);
}
.header-icon-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:40px;
  height:40px;
  border-radius:8px;
  color:var(--ink);
  text-decoration:none;
  transition:all 0.2s;
  pointer-events:auto;
  border:1px solid transparent;
}
.header-icon-btn:hover{
  background:rgba(171,59,97,0.05);
  color:var(--acc);
  border-color:rgba(171,59,97,0.2);
}
.header-icon-btn svg{
  width:24px;
  height:24px;
}
.brand{
  position:relative;
  display:inline-flex;
  align-items:flex-end;
  pointer-events:auto;
  margin-bottom:0;
  line-height:0;
  height:36px;
}
.brand img{
  height:36px;
  width:auto;
  display:block;
  vertical-align:bottom;
}

/* фикс-логотип (остаётся при скролле) */
.logo{
  position:fixed; top:24px; left:24px; z-index:1000;
  height:var(--logo-size); width:auto; display:block;
  margin-bottom:24px;
  transition:all .25s ease;
}
.logo.shrink{ height:calc(var(--logo-size)*0.8); opacity:.95; }

/* ====== HERO ====== */
.hero{
  position:relative;
  padding:0 0 120px;
  overflow:visible;
  min-height:100vh;
  background:#FAFAFA;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:flex-start;
  padding-top:calc(50vh - 80px); /* Центрирование по вертикали */
}

/* сетка: слева H1 и подписи */
.hero .wrap{
  padding:0 !important;
  padding-left: var(--hero-left-pad) !important;
  position:relative;
  z-index:2;
  width:100%;
}
.hero-grid{
  position:relative;
  z-index:2;
  display:block;
  max-width:1200px;
  margin:0;
  padding:0;
}

.hero-title{
  margin:0;
  position:relative;
  z-index:2;
  padding:0;
}

/* Кнопка проекта в правом верхнем углу */
.hero-project-btn{
  position:fixed;
  top:40px;
  right:40px;
  z-index:1001;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:0 20px;
  background:var(--acc);
  color:white;
  text-decoration:none;
  border-radius:8px;
  font-weight:500;
  font-size:14px;
  line-height:1;
  height:36px; /* Высота равна высоте логотипа */
  transition:opacity 0.2s, transform 0.2s;
  box-shadow:0 4px 12px rgba(0,0,0,.15);
}
.hero-project-btn:hover{
  opacity:.9;
  transform:translateY(-2px);
  box-shadow:0 6px 16px rgba(0,0,0,.2);
}

/* Features блок */
.features{
  padding:120px 0;
  background:#FAFAFA;
  position:relative;
}
.features.sticky{
  position:sticky;
  top:0;
  z-index:10;
}
.features .wrap{
  padding-left:var(--hero-left-pad);
  padding-right:40px;
}
.features-container{
  display:grid;
  grid-template-columns:500px 1fr;
  gap:80px;
  align-items:start;
}
.features-nav{
  display:flex;
  flex-direction:column;
  gap:0;
  position:sticky;
  top:120px;
}
.features-nav-item{
  padding:0;
  cursor:pointer;
  transition:all 0.3s;
  font-weight:400;
  color:rgba(41,50,65,.5);
  background:transparent;
  border:none;
  text-align:left;
  font-size:32px;
  line-height:1.1;
  position:relative;
  margin:0;
}
.features-nav-item:not(:first-child){
  padding-top:6px;
}
.features-nav-item:hover{
  color:rgba(41,50,65,.8);
}
.features-nav-item.active{
  color:#293241;
  font-weight:500;
}
.features-content{
  position:relative;
  min-height:400px;
}
.feature-section{
  display:none;
  flex-direction:column;
  justify-content:flex-start;
  animation:fadeIn 0.6s ease;
  opacity:0;
  position:absolute;
  top:0;
  left:0;
  right:0;
  width:100%;
}
.feature-section.active{
  display:flex;
  opacity:1;
}
.feature-section h2{
  font-size:20px;
  font-weight:400;
  margin:0 0 20px;
  padding:0;
  padding-top:9.2px; /* Выравнивание: 35.2px (nav-item) - 26px (h2) = 9.2px */
  color:#293241;
  line-height:1.3;
  font-family:var(--font-heading);
}
.feature-section h2 strong{
  font-weight:400;
}
.feature-section p{
  font-size:18px;
  line-height:1.6;
  color:rgba(41,50,65,.85);
  margin:0;
  max-width:700px;
}
@keyframes fadeIn{
  from{
    opacity:0;
  }
  to{
    opacity:1;
  }
}

.hero-title h1{
  margin:0 0 48px;
  font-family:var(--font-heading);
  font-weight:400; /* ← средняя толщина (было 300, стало 400) */
  font-size:38px; /* ← увеличен на 20% (было 32px, стало 38px) */
  line-height:1.2;
  letter-spacing:0; /* ← нормальное расстояние между буквами */
  color:#293241;
  text-transform:uppercase;
}

/* две независимые колонки подписи под заголовком */
.hero-notes{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:64px;
  max-width:1100px;
  margin:0;
  padding:0;
}
.hero-notes p{
  margin:0;
  font-size:22px;
  line-height:1.2;
  color:rgba(41,50,65,.7);
  font-weight:400;
}

/* мягкий фоновый элемент SVG */
.hero-bg{
  position:absolute;
  left:0;
  right:0;
  top:0;
  bottom:0;
  display:flex;
  align-items:center;
  justify-content:center;
  opacity:.9;
  z-index:1;
  pointer-events:none;
  overflow:visible;
}
.hero-bg img{
  width:623px;
  height:494px;
  filter:blur(0);
  transform:none;
  opacity:1;
  object-fit:contain;
}

/* Лендинг «/»: бирюзовый hero (фон + логотип + слоган) */
html:has(body.page-landing){
  background-color:#DDF1ED;
}
body.page-landing{
  padding-left:0;
  background:#DDF1ED;
  background-image:none;
  background-attachment:scroll;
  overflow-x:clip;
  /* Единый отступ до "внутренней рамки" на фоне */
  --landing-pad: clamp(22px, 3.4vw, 44px);
  /* Высота логотипа в шапке (для вертикального выравнивания справа) */
  --landing-logo-h: 50px;
}
body.page-landing main.page{
  min-height:100vh;
}
.landing-workspace{
  width:100%;
  position:relative;
  overflow-x:clip;
}

body.page-landing .landing-site-header.site-header{
  z-index:1200;
}
/* Шапка лендинга: одинаковые поля по периметру */
body.page-landing .site-header .wrap{
  max-width:none;
  width:100%;
  margin:0;
  box-sizing:border-box;
  padding:var(--landing-pad);
}
body.page-landing .landing-site-header .landing-site-header__wrap{
  display:flex;
  justify-content:space-between;
  align-items:center;
  min-height:var(--landing-logo-h);
}
body.page-landing .landing-site-header .landing-site-header__lead{
  min-width:0;
}

/* Лого на лендинге: маленькое слева сверху */
body.page-landing .landing-site-header .landing-brand{
  display:inline-flex;
  align-items:center;
  text-decoration:none;
  line-height:0;
  overflow:hidden;
}
body.page-landing .landing-site-header .landing-brand img{
  height:var(--landing-logo-h);
  width:auto;
  display:block;
}

/* Правая группа: центр по высоте логотипа */
body.page-landing .landing-site-header .header-actions{
  min-height:var(--landing-logo-h);
  align-items:center;
}

/* Лендинг: иконка + разворачивающаяся подпись */
body.page-landing .landing-site-header .header-expand-icon{
  display:inline-flex;
  flex-direction:row-reverse;
  align-items:center;
  gap:0;
  min-height:40px;
  min-width:40px;
  justify-content:center;
  padding:8px;
  border-radius:8px;
  border:1px solid transparent;
  color:var(--ink);
  text-decoration:none;
  font-size:14px;
  font-weight:500;
  line-height:1.2;
  transition:all 0.2s;
  background:transparent;
  box-sizing:border-box;
  pointer-events:auto;
}
body.page-landing .landing-site-header .header-expand-icon:hover,
body.page-landing .landing-site-header .header-expand-icon:focus-visible{
  gap:8px;
  background:linear-gradient(135deg,#DAFFEC,#ACE2EA);
  color:var(--ink);
  border-color:rgba(172,226,234,0.95);
}
body.page-landing .landing-site-header .header-expand-icon svg{
  flex-shrink:0;
  width:24px;
  height:24px;
}
body.page-landing .landing-site-header .header-expand-icon--person svg{
  width:21px;
  height:21px;
}
body.page-landing .landing-site-header .header-expand-icon__label{
  min-width:0;
  max-width:0;
  opacity:0;
  overflow:hidden;
  white-space:nowrap;
  flex-shrink:1;
  transition:max-width 0.28s ease,opacity 0.2s ease;
}
body.page-landing .landing-site-header .header-expand-icon:hover .header-expand-icon__label,
body.page-landing .landing-site-header .header-expand-icon:focus-visible .header-expand-icon__label{
  max-width:200px;
  opacity:1;
}
body.page-landing .landing-site-header .header-btn-secondary:hover{
  background:linear-gradient(135deg,#DAFFEC,#ACE2EA);
  color:var(--ink);
  border-color:rgba(172,226,234,0.95);
}
body.page-landing .landing-site-header .header-btn.header-btn-project-landing{
  background:rgba(228,247,239,0.2);
  color:var(--ink);
  border-color:rgba(196,228,216,0.45);
  box-shadow:none;
}
body.page-landing .landing-site-header .header-btn.header-btn-project-landing:hover,
body.page-landing .landing-site-header .header-btn.header-btn-project-landing:focus-visible{
  background:rgba(228,247,239,0.32);
  color:var(--ink);
  border-color:rgba(180,216,200,0.55);
  filter:none;
}

body.page-landing .hero.hero--workspace{
  position:relative;
  box-sizing:border-box;
  min-height:100vh;
  min-height:100dvh;
  padding:0;
  display:flex;
  flex-direction:column;
  justify-content:flex-start;
  align-items:stretch;
  background-color:#a8d4ce;
  background-image:url('../img/landing-fon-40.svg');
  background-repeat:no-repeat;
  background-position:center;
  background-size:cover;
}

/* Слоган на лендинге */
body.page-landing .hero-workspace-tagline--landing{
  margin:0;
  max-width:min(38rem,100%);
  text-align:left;
  font-family:Inter,var(--font-body);
  font-weight:500;
  font-synthesis:none;
  font-size:clamp(16px,2vw,20px);
  line-height:1.2;
  letter-spacing:0.01em;
  color:#f6fcfc;
  text-shadow:0 0 0 rgba(0,0,0,0.22);
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}

/* Центр: логотип + слоган (вертикально по центру, по левой линии контента) */
body.page-landing .hero.hero--workspace .landing-hero-center{
  position:absolute;
  left:var(--landing-pad);
  right:var(--landing-pad);
  top:50%;
  transform:translateY(-50%);
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:52px;
  max-width:min(42rem, 100%);
  pointer-events:auto;
}
body.page-landing .hero.hero--workspace .hero-workspace-tagline--hero{
  pointer-events:none;
}

/* обратная совместимость */
.notes-columns{ grid-column:2 / 4; display:grid; grid-template-columns:1fr 1fr; gap:48px; }
.notes-columns p{ margin:0; font-size:22px; color:rgba(41,50,65,.92); }

/* ====== APP ====== */
/* Отступ сверху учитывает высоту абсолютно позиционированного header (60px padding + 36px logo + 24px margin-bottom + запас) */
section.app{padding:144px 0 60px !important}
.app{padding:144px 0 60px}
.app-grid{display:grid; grid-template-columns:240px 1fr; gap:24px; align-items:start}
.sidebar{background:var(--vio); border-radius:16px; padding:22px 18px}
.nav-title{font-weight:700; margin:8px 0 10px; display:flex; align-items:center; gap:8px}
.nav-title .nav-link,
.nav-title button.nav-link{color:var(--ink); text-decoration:none; cursor:pointer; background:none; border:none; padding:0; font:inherit; font-size:inherit; line-height:inherit}
.nav-title .nav-link:hover,
.nav-title button.nav-link:hover{text-decoration:underline}
.nav-title .nav-link.active, 
.nav-title button.nav-link.active,
.nav-sub .sub.active,
.nav-sub button.sub.active{color:var(--acc); font-weight:600}
.nav-sub .sub,
.nav-sub button.sub{color:#3C3C3B; text-decoration:none; cursor:pointer; background:none; border:none; padding:0; font:inherit; font-size:inherit; line-height:inherit; width:100%; text-align:left}
.nav-sub .sub:hover,
.nav-sub button.sub:hover{text-decoration:underline}
.icon{width:18px; height:18px; display:inline-block; background-image:url('../img/icon2.svg'); background-size:contain; background-repeat:no-repeat; background-position:center; opacity:.8}
.nav-sub{list-style:none; padding-left:18px; margin:6px 0 0}
.nav-sub .sub,
.nav-sub button.sub{display:block; padding:6px 0; color:#3C3C3B; text-decoration:none; background:none; border:none; cursor:pointer; font:inherit; font-size:inherit; line-height:inherit; width:100%; text-align:left}
.nav-sub .sub:hover,
.nav-sub button.sub:hover{text-decoration:underline}

.panel{background:var(--panel); border-radius:16px; box-shadow:var(--shadow); padding:18px}
.toolbar{display:flex; align-items:center; gap:12px; margin-bottom:12px}
.layout-compare-toolbar-link{
  font-size:13px;
  color:var(--acc);
  text-decoration:none;
  white-space:nowrap;
}
.layout-compare-toolbar-link:hover{
  text-decoration:underline;
}
.search-line{display:flex; gap:8px; flex:1; align-items:center}
.search-input{flex:1; background:#fff; border:1px solid #e3e3e3; border-radius:10px; padding:10px 12px}
.btn-search{background:transparent; border:none; padding:8px; cursor:pointer; color:var(--ink); opacity:.6; display:flex; align-items:center; justify-content:center}
.btn-search:hover{opacity:1}
.btn-icon{background:var(--acc); color:#fff; border:none; border-radius:10px; padding:10px; cursor:pointer; display:flex; align-items:center; justify-content:center; width:40px; height:40px; transition:all .2s ease}
.btn-icon:hover{opacity:.9; transform:translateY(-1px)}
.btn-icon-small{background:transparent; border:none; padding:6px; cursor:pointer; color:var(--ink); opacity:.6; display:inline-flex; align-items:center; justify-content:center; transition:all .2s ease}
.btn-icon-small:hover{opacity:1; background:rgba(0,0,0,.05); border-radius:4px}
.btn-icon-small.danger{color:#d32f2f}
.btn-icon-small.danger:hover{background:rgba(211,47,47,.1)}
.grow{flex:1}
.btn{border:1px solid rgba(0,0,0,.08); background:white; box-shadow:var(--shadow); padding:10px 14px; border-radius:10px; cursor:pointer; font-size:14px; transition:all .2s ease}
.btn.accent{background:#B04C66; color:#fff; border-color:transparent}
.btn.ghost{background:transparent; border-color:rgba(0,0,0,.15); box-shadow:none}
.btn.ghost:hover{background:rgba(0,0,0,.03); border-color:rgba(0,0,0,.2)}
.btn:hover{opacity:.9; transform:translateY(-1px)}
.btn.accent:hover{opacity:.95}

/* LINK BUTTONS */
.link{background:none; border:none; color:var(--acc); cursor:pointer; text-decoration:underline; font-size:14px; padding:0; transition:color .2s ease}
.link:hover{color:#B04C66; text-decoration:none}
.link.danger{color:#d32f2f}
.link.danger:hover{color:#b71c1c}

/* TABLE */
.table-card{
  border-radius:12px;
  overflow-x:auto;
  -webkit-overflow-scrolling:touch;
  max-width:100%;
  width:100%;
  box-sizing:border-box;
}
/* Иначе sum(col widths) > 100% съедается браузером и ресайзер «упирается» раньше времени */
.table-card .list-table{
  max-width:none;
}
.list-table{width:100%; max-width:100%; border-collapse:collapse; font-size:14px; border:1px solid #e8e8e8; table-layout:fixed}
.list-table.is-resizing{cursor:col-resize; user-select:none}
.list-table th{font-weight:600; text-align:left; padding:12px; color:#4b4f56; white-space:nowrap; border-right:1px solid #e8e8e8; border-bottom:1px solid #e8e8e8; position:relative; overflow:hidden; text-overflow:ellipsis; box-sizing:border-box; padding-right:20px}
.list-table th:last-child{border-right:none; padding:12px 8px; text-align:center}
.list-table td{padding:12px; border-right:1px solid #e8e8e8; border-bottom:1px solid #e8e8e8; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; box-sizing:border-box}
.list-table td:last-child{border-right:none; vertical-align:middle; text-align:center; overflow:visible; white-space:normal; padding:12px 8px}
.list-table tr:last-child td{border-bottom:none}
.list-table td.c1{font-weight:500; color:var(--ink)}

/* Контакты (Спикеры): используем базовые отступы .list-table */
/* Обрезка текста - текст обрезается, но можно изменить ширину колонки */
.cell-truncate{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  max-width:100%;
  position:relative;
}
/* Разворачиваемая ячейка фактуры */
.cell-faktura-expandable[data-expanded="true"]{
  white-space:normal !important;
  word-wrap:break-word;
  overflow:visible;
  height:auto;
  min-height:auto;
  user-select:text; /* Разрешаем выделение текста */
  -webkit-user-select:text;
  -moz-user-select:text;
  -ms-user-select:text;
}
.cell-faktura-expandable:hover{
  background:rgba(0,0,0,.02);
}
.cell-faktura-expandable[data-expanded="false"]{
  user-select:none; /* В свернутом виде не выделяем */
}
/* Inline editing - отключено, используем модальные окна */
/*
.cell-editable{
  cursor:pointer;
  position:relative;
}
.cell-editable:hover{
  background:rgba(126,0,189,.08);
}
.cell-editable.editing{
  padding:0;
}
.inline-edit-input{
  outline:none;
}
*/
.list-table tbody td.cell-editable{
  cursor:text;
}
/* Инлайн «Тема» / «Описание» в таблице тем */
.list-table tbody tr[data-theme] td.cell-editable-theme{
  cursor:text;
}
.list-table tbody tr[data-theme] td.cell-editable-theme:hover{
  background:rgba(126,0,189,.06);
}
.list-table tbody tr[data-theme] td.cell-editable-theme.editing{
  vertical-align:middle;
  white-space:normal;
  overflow:visible;
}
/* Редактирование прямо в ячейке (contenteditable): без рамок и подчёркиваний — только курсор */
.list-table tbody tr[data-theme] td.cell-editable-theme.editing .theme-cell-edit{
  display:block;
  width:100%;
  margin:0;
  padding:0;
  border:none;
  outline:none;
  box-shadow:none;
  background:transparent;
  font:inherit;
  font-size:inherit;
  line-height:inherit;
  color:inherit;
  cursor:text;
  min-height:0;
  max-height:6.5rem;
  overflow-y:auto;
  word-break:break-word;
}
.list-table tbody tr[data-theme] td.cell-editable-theme.editing .theme-cell-edit--title{
  white-space:nowrap;
  overflow-x:auto;
  overflow-y:hidden;
  max-height:none;
}
.list-table tbody tr[data-theme] td.cell-editable-theme.editing .theme-cell-edit:focus{
  outline:none;
  box-shadow:none;
}
/* Статусы не должны обрезаться */
.cell-truncate .status-warm,
.cell-truncate .status-cold,
.cell-truncate .status-completed,
.cell-truncate .status-in-progress,
.cell-truncate .status-tasks{
  white-space:nowrap;
  display:inline-block;
}
/* Column Resizer */
.column-resizer{
  position:absolute;
  right:0;
  top:0;
  width:6px;
  height:100%;
  cursor:col-resize;
  background:transparent;
  transition:background .2s ease;
  z-index:10;
}

/* Hub (Темы/Предложения): чуть шире зона захвата */
#workspaceHubThemesBoard .column-resizer{
  width:8px;
  z-index:50;
}
.column-resizer:hover{
  background:rgba(20,25,34,0.10);
}
.column-resizer:active,
.list-table.is-resizing .column-resizer{
  background:rgba(20,25,34,0.16);
}

/* Ресайзер в ячейках: появляется только на hover строки/ресайзе */
.column-resizer--cell{
  opacity:0;
}
.list-table tbody tr:hover .column-resizer--cell,
.list-table tbody td:hover .column-resizer--cell,
.list-table tbody td:focus-within .column-resizer--cell,
.list-table.is-resizing .column-resizer--cell,
.column-resizer--cell:hover,
.column-resizer--cell:active{
  opacity:1;
}

/* Hub (Темы/Предложения): ресайзер в строке всегда доступен (Safari может "терять" hover после клика в select) */
#workspaceHubThemesBoard .column-resizer--cell{
  opacity:1 !important;
  pointer-events:auto;
  z-index:200;
}
#workspaceHubThemesBoard td{
  position:relative; /* гарантируем контекст для absolute ресайзера */
}
#workspaceHubThemesBoard td select,
#workspaceHubThemesBoard td .theme-cell-edit{
  position:relative;
  z-index:1; /* ресайзер выше */
}
/* Стили для статусов */
.status-warm{color:#2e7d32; background:#e8f5e9; padding:4px 10px; border-radius:6px; display:inline-block; font-weight:500; font-size:13px}
.status-cold{color:#1565c0; background:#e3f2fd; padding:4px 10px; border-radius:6px; display:inline-block; font-weight:500; font-size:13px}
/* Селект «теплый / холодный» в таблице контактов */
.contact-status-select{
  border:none;
  background:transparent;
  font-size:13px;
  font-weight:500;
  padding:4px 10px;
  border-radius:6px;
  cursor:pointer;
  outline:none;
  appearance:none;
  display:block;
  width:100%;
  max-width:100%;
  min-width:0;
  box-sizing:border-box;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23666' d='M6 9L1 4h10z'/%3E%3C/svg%3E");
  background-repeat:no-repeat;
  background-position:right 6px center;
  padding-right:24px;
  color:inherit;
}
.contact-status-select:hover{
  opacity:0.8;
}
.contact-status-select:focus{
  box-shadow:0 0 0 2px rgba(126,0,189,0.3);
}
.contact-status-select.contact-status-warm{
  color:#2e7d32;
  background-color:#e8f5e9;
}
.contact-status-select.contact-status-cold{
  color:#1565c0;
  background-color:#e3f2fd;
}
/* Статусы тем */
.status-completed{color:#1b5e20; background:#c8e6c9; padding:4px 10px; border-radius:6px; display:inline-block; font-weight:500; font-size:13px}
.status-in-progress{color:#e65100; background:#ffe0b2; padding:4px 10px; border-radius:6px; display:inline-block; font-weight:500; font-size:13px}
.status-tasks{color:#1565c0; background:#bbdefb; padding:4px 10px; border-radius:6px; display:inline-block; font-weight:500; font-size:13px}
/* Select для статуса в таблице тем: на всю ширину ячейки; симметрия отступов относительно табов (--tasks-tab-padding-x). */
.status-select{
  border:none;
  background:transparent;
  font-size:13px;
  font-weight:500;
  display:block;
  width:100%;
  max-width:100%;
  min-width:0;
  box-sizing:border-box;
  --theme-select-cell-pad-x:12px;
  --theme-select-chevron-gap:max(0px, calc(var(--tasks-tab-padding-x, 28px) - var(--theme-select-cell-pad-x)));
  --theme-select-chevron-w:12px;
  /* Симметрия: столько же воздуха слева от текста, сколько справа от стрелки до края (+ ширина стрелки справа) */
  padding:4px calc(var(--theme-select-chevron-gap) + var(--theme-select-chevron-w) + 6px) 4px var(--theme-select-chevron-gap);
  border-radius:6px;
  cursor:pointer;
  outline:none;
  appearance:none;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23666' d='M6 9L1 4h10z'/%3E%3C/svg%3E");
  background-repeat:no-repeat;
  background-position:right var(--theme-select-chevron-gap) center;
  background-size:var(--theme-select-chevron-w) var(--theme-select-chevron-w);
  color:inherit;
}
.status-select:hover{
  opacity:0.8;
}
.status-select:focus{
  box-shadow:0 0 0 2px rgba(126,0,189,0.3);
}
.status-select.status-completed{
  color:#1b5e20;
  background-color:#c8e6c9;
}
.status-select.status-in-progress{
  color:#e65100;
  background-color:#ffe0b2;
}
.status-select.status-tasks{
  color:#1565c0;
  background-color:#bbdefb;
}
.theme-responsible-select{
  border:none;
  background:transparent;
  font-size:13px;
  font-weight:500;
  display:block;
  width:100%;
  max-width:100%;
  min-width:0;
  box-sizing:border-box;
  --theme-select-cell-pad-x:12px;
  --theme-select-chevron-gap:max(0px, calc(var(--tasks-tab-padding-x, 28px) - var(--theme-select-cell-pad-x)));
  --theme-select-chevron-w:12px;
  padding:4px calc(var(--theme-select-chevron-gap) + var(--theme-select-chevron-w) + 6px) 4px var(--theme-select-chevron-gap);
  border-radius:6px;
  cursor:pointer;
  outline:none;
  appearance:none;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23666' d='M6 9L1 4h10z'/%3E%3C/svg%3E");
  background-repeat:no-repeat;
  background-position:right var(--theme-select-chevron-gap) center;
  background-size:var(--theme-select-chevron-w) var(--theme-select-chevron-w);
  color:inherit;
}
.theme-responsible-select:hover{
  opacity:0.8;
}
.theme-responsible-select:focus{
  box-shadow:0 0 0 2px rgba(126,0,189,0.3);
}
.responsible-cell{
  padding:8px 12px !important;
}
/* Стили для селекта статуса профилей */
.profile-status-select{
  border:none;
  background:transparent;
  font-size:13px;
  font-weight:500;
  padding:4px 10px;
  border-radius:6px;
  cursor:pointer;
  outline:none;
  width:100%;
  appearance:none;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23666' d='M6 9L1 4h10z'/%3E%3C/svg%3E");
  background-repeat:no-repeat;
  background-position:right 6px center;
  padding-right:24px;
  min-width:120px;
  color:inherit;
}
.profile-status-select:hover{
  opacity:0.8;
}
.profile-status-select:focus{
  box-shadow:0 0 0 2px rgba(126,0,189,0.3);
}
.profile-status-select.status-working{
  color:#7E00BD;
  background-color:#F2E1F9;
}
.profile-status-select.status-vacation{
  color:#ff9800;
  background-color:#ffe0b2;
}
.profile-status-select.status-sick{
  color:#f44336;
  background-color:#ffcdd2;
}
/* Раньше тут были жёсткие ширины колонок «Спикеры»; убрали — TableResizer сам управляет ширинами. */
.list-table th:last-child, .list-table td:last-child{width:auto; min-width:100px; padding:12px 8px} /* Действия */
/* Стили для таблицы сотрудников (4 колонки данных) */
.list-table.employees-table th:nth-child(1),
.list-table.employees-table td:nth-child(1){width:25%} /* ФИО */
.list-table.employees-table th:nth-child(2),
.list-table.employees-table td:nth-child(2){width:20%} /* Телефон */
.list-table.employees-table th:nth-child(3),
.list-table.employees-table td:nth-child(3){width:20%} /* Telegram */
.list-table.employees-table th:nth-child(4),
.list-table.employees-table td:nth-child(4){width:25%} /* Должность */
.list-table.employees-table th:last-child,
.list-table.employees-table td:last-child{width:auto; min-width:100px; padding:12px 8px} /* Действия */

/* Phone Cell с быстрыми действиями */
.phone-cell{
  display:flex;
  align-items:center;
  gap:8px;
  min-width:0;
}
.phone-cell .phone-number{
  flex:1;
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:var(--ink);
  text-decoration:none;
}
.phone-cell .phone-number:hover{
  text-decoration:underline;
  color:var(--acc);
}
.phone-cell .phone-actions{
  display:none;
  align-items:center;
  gap:2px;
  flex-shrink:0;
}
.phone-cell:hover .phone-actions{
  display:flex;
}
.phone-action{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:24px;
  height:24px;
  border-radius:4px;
  background:transparent;
  color:var(--ink);
  opacity:.6;
  transition:all .2s ease;
  text-decoration:none;
}
.phone-action:hover{
  opacity:1;
  background:rgba(0,0,0,.05);
  transform:scale(1.1);
}
.phone-action:focus{
  outline:2px solid var(--acc);
  outline-offset:2px;
}
.phone-action svg{
  width:14px;
  height:14px;
}

/* Mobile: показываем только телефон */
@media(max-width:768px){
  .phone-cell .phone-actions{
    display:none !important;
  }
  .phone-cell .phone-number{
    flex:none;
  }
}
.row-actions{display:flex; gap:10px; flex-wrap:wrap; justify-content:center; align-items:center}
.empty-card{background:#fff; border-radius:12px; box-shadow:var(--shadow); padding:28px; text-align:center; color:#6b6b6b}
.add-status-hint:hover{
  text-decoration:underline;
  color:var(--acc) !important;
}

/* MODALS */
.modal{position:fixed; inset:0; background:rgba(0,0,0,.25); display:none; align-items:center; justify-content:center; padding:20px; z-index:2000; overflow-y:auto}
.modal.show{display:flex}
.modal__dialog{background:white; border-radius:16px; box-shadow:var(--shadow); padding:20px; width:min(720px,95vw); position:relative; max-height:90vh; overflow-y:auto; margin:auto}
.modal__dialog--task{
  width:min(640px,95vw);
  max-width:640px;
  padding:16px 18px 18px;
}
.modal__dialog--task__title{
  margin:0 0 12px 0;
  font-size:18px;
  font-weight:500;
  padding-right:36px;
  line-height:1.25;
}
#addTaskModal .form-group{
  margin-bottom:14px;
}
#addTaskModal #taskDescription.task-modal__description,
textarea.task-modal__description{
  min-height:4.25em;
  max-height:7.5em;
  resize:vertical;
  line-height:1.45;
  box-sizing:border-box;
}
.task-modal__footer{
  display:flex;
  justify-content:flex-end;
  gap:12px;
  margin-top:4px;
  padding-top:14px;
  border-top:1px solid rgba(0,0,0,0.1);
}
.factura-modal__dialog{
  width:min(560px,95vw);
  max-width:560px;
  padding:18px 20px 20px;
}
.factura-modal__rows{
  display:flex;
  flex-direction:column;
  gap:0;
  max-height:min(60vh, 480px);
  overflow-y:auto;
  padding-right:2px;
  margin:0 0 4px 0;
}
.factura-modal__pair{
  padding:12px 0 14px;
  border-top:1px solid var(--block-border-divider);
}
.factura-modal__pair:first-child{
  border-top:none;
  padding-top:0;
}
.factura-modal__pair-head{
  margin-bottom:8px;
}
.factura-modal__speaker-name{
  font-size:15px;
  font-weight:600;
  color:#141922;
  word-break:break-word;
  line-height:1.35;
}
.factura-modal__pair .form-group{
  margin-bottom:0;
}
.factura-modal__textarea{
  min-height:4.5em;
  resize:vertical;
  font-family:inherit;
  line-height:1.45;
  box-sizing:border-box;
  width:100%;
}
.factura-modal__actions{
  display:flex;
  justify-content:flex-end;
  gap:12px;
  margin-top:16px;
  padding-top:16px;
  border-top:1px solid rgba(0,0,0,0.1);
}

/* Task "document" modal */
.task-doc-modal__dialog{
  width:min(920px, 96vw);
  max-width:920px;
  padding:0;
  overflow:hidden;
}
.task-doc-modal__content{
  padding:22px 22px 20px 22px;
  background:
    linear-gradient(180deg, rgba(227,242,253,0.55), rgba(255,255,255,0.92) 38%, #fff 100%);
}
.task-doc{
  display:flex;
  flex-direction:column;
  gap:14px;
}
.task-doc__meta{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}
.task-doc__badge{
  font-size:12px;
  padding:6px 10px;
  border-radius:999px;
  border:1px solid rgba(0,0,0,0.10);
  background:rgba(255,255,255,0.75);
  color:rgba(41,50,65,0.75);
  user-select:none;
}
.task-doc__badge--burning{
  border-color:rgba(255,68,68,0.25);
  color:#b51414;
  background:rgba(255,68,68,0.08);
}
.task-doc__divider{
  height:1px;
  background:rgba(0,0,0,0.08);
}
.task-doc .task-card__title-input{
  font-size:20px;
  font-weight:600;
  white-space:normal;
  overflow:visible;
  text-overflow:clip;
}
.task-doc .task-card__description-input{
  display:block;
  -webkit-line-clamp:unset;
  line-clamp:unset;
  overflow:auto;
  max-height:none;
  min-height:120px;
}
.task-doc .task-card__speakers-block{
  gap:10px;
}
.task-doc .task-card__speaker-block{
  margin-bottom:10px;
}
.task-doc .task-card__speaker-block:last-child{
  margin-bottom:0;
}

/* Priority task "document" modal */
.priority-doc-modal__dialog{
  width:min(920px, 96vw);
  max-width:920px;
  padding:0;
  overflow:hidden;
}
.priority-doc-modal__content{
  padding:22px 22px 20px 22px;
  background:
    linear-gradient(180deg, rgba(41,163,177,0.28) 0%, rgba(255,255,255,0.92) 42%, #fff 100%);
}
.priority-doc{
  display:flex;
  flex-direction:column;
  gap:14px;
}
.priority-doc__meta{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}
.priority-doc__title{
  font-size:20px;
  font-weight:600;
  color:#141922;
  line-height:1.25;
  margin:0;
}
.priority-doc__title-input{
  width:100%;
  border:1px solid rgba(0,0,0,0.10);
  background:rgba(255,255,255,0.85);
  border-radius:12px;
  padding:10px 12px;
  font-size:20px;
  font-weight:600;
  color:#141922;
  line-height:1.25;
  font-family:inherit;
  outline:none;
  box-sizing:border-box;
}
.priority-doc__title-input:focus{
  border-color:#E46402;
  box-shadow:0 0 0 3px rgba(228,100,2,0.12);
  background:#fff;
}
.priority-doc__divider{
  height:1px;
  background:rgba(0,0,0,0.08);
}
.priority-doc__pair{
  display:flex;
  flex-direction:column;
  gap:10px;
}
.priority-doc__speaker-line{
  font-size:14px;
  font-weight:600;
  color:rgba(20,25,34,0.88);
}
.priority-doc__speaker-input{
  width:100%;
  border:1px solid rgba(0,0,0,0.10);
  background:rgba(255,255,255,0.85);
  border-radius:12px;
  padding:10px 12px;
  font-size:14px;
  font-weight:600;
  color:rgba(20,25,34,0.9);
  line-height:1.25;
  font-family:inherit;
  outline:none;
  box-sizing:border-box;
}
.priority-doc__speaker-input:focus{
  border-color:#E46402;
  box-shadow:0 0 0 3px rgba(228,100,2,0.12);
  background:#fff;
}
.priority-doc__label{
  font-size:12px;
  font-weight:600;
  color:rgba(20,25,34,0.55);
  text-transform:uppercase;
  letter-spacing:0.04em;
}
.priority-doc__section-label{
  font-size:12px;
  font-weight:600;
  color:rgba(20,25,34,0.55);
  text-transform:uppercase;
  letter-spacing:0.04em;
  margin-top:-4px;
}
.priority-doc__field{
  display:flex;
  flex-direction:column;
  gap:8px;
}
.priority-doc__description{
  display:flex;
  flex-direction:column;
  gap:8px;
}
.priority-doc__description-input{
  width:100%;
  border:1px solid rgba(0,0,0,0.10);
  background:rgba(255,255,255,0.85);
  border-radius:12px;
  padding:10px 12px;
  font-size:14px;
  line-height:1.45;
  color:rgba(20,25,34,0.88);
  font-family:inherit;
  outline:none;
  box-sizing:border-box;
  resize:none;
  min-height:96px;
}
.priority-doc__description-input:focus{
  border-color:#E46402;
  box-shadow:0 0 0 3px rgba(228,100,2,0.12);
  background:#fff;
}
.priority-doc__actions{
  display:flex;
  justify-content:flex-end;
  gap:12px;
  padding-top:16px;
  margin-top:2px;
}
.priority-doc__factura{
  white-space:pre-wrap;
  font-size:15px;
  line-height:1.45;
  color:rgba(20,25,34,0.85);
}
.priority-doc__factura-input{
  width:100%;
  border:1px solid rgba(0,0,0,0.10);
  background:rgba(255,255,255,0.85);
  border-radius:12px;
  padding:10px 12px;
  font-size:15px;
  line-height:1.45;
  color:rgba(20,25,34,0.88);
  font-family:inherit;
  outline:none;
  box-sizing:border-box;
  resize:none;
  min-height:96px;
}
.priority-doc__factura-input:focus{
  border-color:#E46402;
  box-shadow:0 0 0 3px rgba(228,100,2,0.12);
  background:#fff;
}
.priority-doc__factura--empty{
  color:rgba(20,25,34,0.55);
  font-style:italic;
}
.priority-doc__people{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:8px;
  margin:0;
  padding:0;
}
.modal__close{position:absolute; top:8px; right:10px; background:none; border:none; font-size:28px; line-height:1; cursor:pointer}
.grid-form{display:grid; grid-template-columns:repeat(2,1fr); gap:12px; margin-top:12px}
.grid-form label{display:flex; flex-direction:column; gap:6px; font-size:14px}
.grid-form input, .grid-form select, .grid-form textarea{padding:10px 12px; border:1px solid #e5e5e5; border-radius:10px; background:#fff; font-family:inherit; font-size:14px; width:100%; box-sizing:border-box; border-width:1px; border-style:solid}
.grid-form input:focus, .grid-form select:focus, .grid-form textarea:focus{outline:none; border-color:var(--acc); box-shadow:0 0 0 3px rgba(171,59,97,.1)}
.grid-form textarea{resize:vertical; min-height:80px; cursor:text}
.grid-form label.full-width{grid-column:1/-1}
.form-actions{grid-column:1/-1; display:flex; gap:10px; justify-content:flex-end; margin-top:8px}
.btn-primary{
  padding:10px 20px;
  border-radius:8px;
  background:var(--acc);
  color:white;
  border:1px solid var(--acc);
  cursor:pointer;
  font-size:14px;
  font-weight:500;
  transition:all 0.2s;
}
.btn-primary:hover{
  background:#9a3456;
  border-color:#9a3456;
}
.btn-danger{
  padding:10px 16px;
  border-radius:8px;
  background:transparent;
  color:#d32f2f;
  border:1px solid rgba(211,47,47,0.35);
  cursor:pointer;
  font-size:14px;
  font-weight:500;
  transition:all 0.2s;
  margin-right:auto;
}
.btn-danger:hover{
  background:rgba(211,47,47,0.08);
  border-color:rgba(211,47,47,0.55);
}
.btn-danger:active{
  background:rgba(211,47,47,0.12);
}
.btn-secondary{
  padding:10px 20px;
  border-radius:8px;
  background:transparent;
  color:var(--ink);
  border:1px solid #e0e0e0;
  cursor:pointer;
  font-size:14px;
  font-weight:500;
  transition:all 0.2s;
}
.btn-secondary:hover{
  background:#f5f5f5;
  border-color:#d0d0d0;
}

/* ====== RESPONSIVE ====== */
/* Desktop large (1024px+) - default styles */

/* Laptop (1024px) */
@media (max-width:1024px){
  .wrap{ max-width:100%; padding:0 20px; }
  .app .wrap{ padding-left:var(--hero-left-pad) !important; padding-right:var(--hero-left-pad) !important; }
  .app .wrap .office-board{ margin-left:var(--hero-left-pad) !important; margin-right:var(--hero-left-pad) !important; }
  .app-grid{ grid-template-columns:200px 1fr; gap:20px; }
  .hero-grid{ grid-template-columns:1fr; gap:40px; }
  .hero-title h1{ font-size:32px; margin-bottom:40px; }
  .hero-notes{ grid-template-columns:1fr; gap:32px; max-width:100%; }
  .hero-bg{ justify-content:center; }
}

/* Tablet (768px) */
@media (max-width:768px){
  :root{ --hero-left-pad: 24px; }
  .hero{ padding:100px 0 120px; min-height:100vh; }
  .hero-grid{ grid-template-columns:1fr; gap:40px; }
  .hero-title h1{ font-size:30px; margin-bottom:36px; }
  .hero-notes{ grid-template-columns:1fr; gap:24px; }
  .hero-notes p{ font-size:20px; }
  .hero-bg{ opacity:.2; }
  .app-grid{ grid-template-columns:1fr; gap:20px; }
  section.app.app--layout-compare-wrap > .app-grid.app-grid--compare-contacts{
    grid-template-columns:1fr;
    gap:22px;
  }
  .sidebar{ margin-bottom:16px; margin-left:0; }
  .toolbar{ flex-wrap:wrap; }
  .search-line{ width:100%; }
  .list-table{ font-size:13px; }
  .list-table th, .list-table td{ padding:10px 8px; }
  .row-actions{ flex-direction:column; gap:6px; }
  .row-actions .link{ font-size:13px; }
}

/* Mobile (до 720px) */
@media (max-width:720px){
  :root{ --hero-left-pad: 16px; }
  .wrap{ padding:0 16px; }
  .app .wrap{ padding-left:var(--hero-left-pad) !important; padding-right:var(--hero-left-pad) !important; }
  .app .wrap .office-board{ margin-left:var(--hero-left-pad) !important; margin-right:var(--hero-left-pad) !important; }
  .hero{ padding:80px 0 100px; min-height:100vh; }
  .hero-title h1{ font-size:22px; line-height:1.15; margin-bottom:32px; }
  .hero-notes{ gap:20px; }
  .hero-notes p{ font-size:18px; line-height:1.5; }
  .hero-bg{ opacity:.15; }
  .panel{ padding:14px; }
  .toolbar{ gap:8px; }
  .btn{ padding:8px 12px; font-size:13px; }
  .list-table{ min-width:600px; font-size:12px; }
  .list-table th, .list-table td{ padding:8px 6px; }
  .modal__dialog{ padding:16px; width:95vw; }
  .grid-form{ grid-template-columns:1fr; gap:10px; }
}

/* Small mobile (до 480px) */
@media (max-width:480px){
  :root{ --hero-left-pad: 16px; }
  .hero{ padding:60px 0 80px; }
  .hero-title h1{ font-size:28px; margin-bottom:20px; }
  .hero-notes p{ font-size:14px; }
  section.app{ padding:124px 0 40px !important; }
  body.has-app-nav-rail section.app:not(.app--layout-compare-wrap){
    padding-top:68px !important;
  }
  section.app.app--layout-compare-wrap{
    padding-top:44px !important;
    padding-bottom:40px !important;
    padding-left:var(--hero-left-pad) !important;
    padding-right:var(--hero-left-pad) !important;
  }
  .app{ padding:124px 0 40px; }
  .sidebar{ padding:16px 14px; }
  .table-card{ border-radius:8px; }
  .list-table{ min-width:500px; }
}

/* ====== COMPANY SIDEBAR ====== */
.company-sidebar {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 10000;
  display: none;
  pointer-events: none;
}

.company-sidebar.show {
  display: block;
  pointer-events: all;
}

.company-sidebar__overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.3);
  backdrop-filter: blur(2px);
}

.company-sidebar__panel {
  position: absolute;
  top: 0;
  right: 0;
  width: 50vw;
  min-width: 400px;
  max-width: 900px;
  height: 100%;
  background: var(--panel);
  box-shadow: -4px 0 20px rgba(0, 0, 0, 0.15);
  display: flex;
  flex-direction: column;
  transform: translateX(100%);
  transition: transform 0.3s ease;
  overflow: hidden;
}

.company-sidebar.show .company-sidebar__panel {
  transform: translateX(0);
}

.company-sidebar__header {
  padding: 20px 24px;
  border-bottom: 1px solid #e5e5e5;
  display: flex;
  justify-content: space-between;
  align-items: center;
  background: var(--bg);
}

.company-sidebar__header h3 {
  margin: 0;
  font-size: 20px;
  font-weight: 700;
  color: var(--ink);
}

.company-sidebar__close {
  background: none;
  border: none;
  font-size: 32px;
  line-height: 1;
  color: var(--ink);
  cursor: pointer;
  padding: 0;
  width: 32px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0.6;
  transition: opacity 0.2s;
}

.company-sidebar__close:hover {
  opacity: 1;
}

.company-sidebar__content {
  flex: 1;
  overflow-y: auto;
  padding: 24px;
}

.company-sidebar__content .loading {
  text-align: center;
  padding: 40px 20px;
  color: var(--muted);
}

.company-sidebar__company-name {
  font-size: 18px;
  font-weight: 600;
  color: var(--ink);
  margin: 0;
  padding: 12px;
  background: var(--bg);
  border-radius: 8px;
}

.company-sidebar__company-info {
  margin-bottom: 32px;
  padding-bottom: 24px;
  border-bottom: 1px solid #e5e5e5;
}

.company-sidebar__info-item {
  margin-bottom: 12px;
  font-size: 14px;
  color: var(--muted);
}

.company-sidebar__info-item strong {
  color: var(--ink);
  font-weight: 600;
  display: inline-block;
  min-width: 120px;
}

.company-sidebar__contacts-title {
  font-size: 18px;
  font-weight: 700;
  color: var(--ink);
  margin: 0 0 16px 0;
}

.company-sidebar__contacts-list {
  list-style: none;
  padding: 0;
  margin: 0;
}

.company-sidebar__contact-item {
  padding: 16px;
  background: var(--bg);
  border-radius: 12px;
  margin-bottom: 12px;
  border: 1px solid #e5e5e5;
}

.company-sidebar__contact-name {
  font-size: 16px;
  font-weight: 600;
  color: var(--ink);
  margin: 0 0 8px 0;
}

.company-sidebar__contact-details {
  font-size: 14px;
  color: var(--muted);
  margin: 4px 0;
}

.company-sidebar__contact-details a {
  color: var(--acc);
  text-decoration: none;
}

.company-sidebar__contact-details a:hover {
  text-decoration: underline;
}

.company-sidebar__empty {
  text-align: center;
  padding: 40px 20px;
  color: var(--muted);
  font-size: 14px;
}

.company-view-link {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  color: var(--acc);
  text-decoration: none;
  font-size: 13px;
  margin-left: 8px;
  padding: 0;
  border: none;
  background: none;
  transition: opacity 0.2s;
  white-space: nowrap;
}

.company-view-link:hover {
  opacity: 0.7;
}

.company-view-link svg {
  width: 12px;
  height: 12px;
  flex-shrink: 0;
}

.company-sidebar__contact-item-wrapper {
  margin-bottom: 20px;
  padding: 16px;
  background: var(--bg);
  border-radius: 8px;
  border: 1px solid #e5e5e5;
}

.company-sidebar__contact-fields {
  margin-top: 12px;
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.company-sidebar__contact-field {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.company-sidebar__contact-field label {
  font-size: 12px;
  font-weight: 500;
  color: var(--muted);
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

.company-sidebar__contact-link {
  color: var(--acc);
  text-decoration: none;
  font-size: 14px;
  transition: opacity 0.2s;
}

.company-sidebar__contact-link:hover {
  opacity: 0.7;
  text-decoration: underline;
}

.company-sidebar__contact-empty {
  color: var(--muted);
  font-size: 14px;
  font-style: italic;
}

.company-sidebar__contact-input {
  padding: 8px 12px;
  border: 1px solid #e5e5e5;
  border-radius: 6px;
  font-size: 14px;
  color: var(--ink);
  background: var(--panel);
  width: 100%;
  box-sizing: border-box;
  transition: border-color 0.2s;
}

.company-sidebar__contact-input:focus {
  outline: none;
  border-color: var(--acc);
}

.company-sidebar__contact-input-wrapper {
  display: flex;
  align-items: center;
  gap: 8px;
}

.company-sidebar__contact-input-wrapper .company-sidebar__contact-input {
  flex: 1;
}

.company-sidebar__contact-field {
  position: relative;
}

.company-sidebar__contact-input-wrapper {
  position: relative;
}

.company-sidebar__contact-input-wrapper .company-sidebar__contact-link {
  position: absolute;
  right: 8px;
  top: 50%;
  transform: translateY(-50%);
  font-size: 16px;
  text-decoration: none;
  display: inline-block;
  z-index: 1;
}

.company-sidebar__contact-field:first-child .company-sidebar__contact-link {
  position: absolute;
  right: 8px;
  top: 50%;
  transform: translateY(-50%);
  margin-top: 12px;
  font-size: 16px;
  text-decoration: none;
  display: inline-block;
  z-index: 1;
}

/* ====== ОНЛАЙН-ОФИС (ДОСКА СТАТУСОВ) ====== */
.office-board{
  background:transparent;
  border:1px solid rgba(0,0,0,0.1);
  border-radius:16px;
  padding:18px;
  margin:0;
  margin-bottom:24px;
  box-sizing:border-box;
  display:block;
}
/* Явные отступы для доски от краев экрана */
/* Доска находится на том же уровне, что и .wrap.app-grid, поэтому добавляем отступы напрямую */
.app > .office-board{
  margin-left:var(--hero-left-pad) !important;
  margin-right:var(--hero-left-pad) !important;
  width:auto;
  max-width:100%;
  box-sizing:border-box;
}
/* Проверяем, что родитель имеет правильные отступы */
section.app .wrap,
.app .wrap{
  padding-left:var(--hero-left-pad) !important;
  padding-right:var(--hero-left-pad) !important;
}
.office-board__header{
  display:flex;
  justify-content:space-between;
  align-items:center;
  margin-bottom:20px;
}
.office-board.collapsed .office-board__header{
  margin-bottom:0;
}
.btn-icon-small{
  width:28px;
  height:28px;
  padding:6px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:transparent;
  border:none;
  cursor:pointer;
  color:var(--ink);
  opacity:0.6;
  transition:opacity 0.2s;
  border-radius:4px;
}
.btn-icon-small:hover{
  opacity:1;
  background:rgba(0,0,0,0.05);
}
.office-board.collapsed .office-board__content{
  display:none !important;
}
.office-board.collapsed .toggle-icon{
  transform:rotate(180deg);
}
.toggle-icon{
  transition:transform 0.3s ease;
}
.office-board__title{
  font-size:20px;
  font-weight:500;
  color:var(--ink);
  margin:0;
}
.office-board__content{
  display:flex;
  flex-direction:row;
  flex-wrap:wrap;
  gap:12px;
  justify-content:flex-start;
  align-items:flex-start;
  align-content:flex-start;
}
.office-status-card{
  padding:10px;
  border-radius:0;
  position:relative;
  cursor:pointer;
  transition:transform 0.2s;
  aspect-ratio:1;
  width:140px;
  height:140px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  text-align:center;
  transform:none;
  box-sizing:border-box;
  flex-shrink:0;
  flex-grow:0;
}
.office-status-card:nth-child(even){
  transform:none;
}
.office-status-card:nth-child(3n){
  transform:none;
}
.office-status-card:hover{
  transform:translateY(-2px) scale(1.05);
  z-index:1;
}
.office-status-card--beige{
  background:#F5E6D3;
  color:#5C4033;
}
.office-status-card--green{
  background:#D4EDDA;
  color:#155724;
}
.office-status-card--orange{
  background:#FFE5B4;
  color:#8B4513;
}
.office-status-card--red{
  background:#FFE5E5;
  color:#8B0000;
}
.office-status-card__text{
  font-size:14px;
  line-height:1.4;
  margin:0;
  word-wrap:break-word;
  word-break:break-word;
  overflow-wrap:break-word;
  hyphens:auto;
  text-align:center;
}

/* Пустая карточка статуса */
.empty-office-status-card{
  padding:24px;
  border-radius:8px;
  position:relative;
  cursor:pointer;
  transition:all 0.2s;
  aspect-ratio:1;
  width:140px;
  height:140px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  text-align:center;
  box-sizing:border-box;
  background:#F5E6D3;
  color:#5C4033;
}
.empty-office-status-card:hover{
  background:#EDD5B8;
  transform:translateY(-2px);
}
.empty-card-text{
  font-size:18px;
  line-height:1.3;
  margin:0 0 12px 0;
  font-weight:400;
  color:#5C4033;
}
.add-status-hint{
  font-size:14px;
  line-height:1.4;
  margin:0;
  color:rgba(92, 64, 51, 0.6);
  transition:color 0.2s;
}
.empty-office-status-card:hover .add-status-hint{
  color:rgba(92, 64, 51, 0.8);
  text-decoration:underline;
}
/* Призрачный стикер для добавления нового статуса - всегда последний в grid */
.office-status-card-ghost{
  padding:10px;
  border-radius:0;
  position:relative;
  cursor:pointer;
  transition:all 0.2s;
  aspect-ratio:1;
  width:140px;
  height:140px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  text-align:center;
  background:transparent;
  border:2px dashed var(--block-border-dashed);
  color:rgba(0,0,0,0.4);
  box-sizing:border-box;
  flex-shrink:0;
  flex-grow:0;
}
.office-status-card-ghost:hover{
  border-color:rgba(0,0,0,0.3);
  color:rgba(0,0,0,0.6);
  background:rgba(0,0,0,0.02);
  transform:translateY(-2px);
}
.office-status-card-ghost__icon{
  width:24px;
  height:24px;
  stroke:currentColor;
}
.office-status-card__actions{
  position:absolute;
  top:4px;
  right:4px;
  display:flex;
  gap:2px;
  opacity:0;
  transition:opacity 0.2s;
}
.office-status-card:hover .office-status-card__actions{
  opacity:1;
}
.office-status-card__edit,
.office-status-card__delete{
  background:rgba(255,255,255,0.9);
  border:1px solid rgba(0,0,0,0.1);
  border-radius:3px;
  padding:3px;
  cursor:pointer;
  color:inherit;
  opacity:0.8;
  transition:opacity 0.2s, background 0.2s;
  display:flex;
  align-items:center;
  justify-content:center;
}
.office-status-card__edit:hover,
.office-status-card__delete:hover{
  opacity:1;
  background:rgba(255,255,255,1);
}
.office-status-card__edit svg,
.office-status-card__delete svg{
  width:12px;
  height:12px;
}
.office-status-card__emoji{
  font-size:32px;
  line-height:1;
  margin-bottom:8px;
  display:block;
  order:-1;
  width:100%;
  text-align:center;
  font-family:Apple Color Emoji, Segoe UI Emoji, Noto Color Emoji, sans-serif;
}
/* Пустая карточка в онлайн офисе - квадратная, как обычные карточки */
.office-board__content .empty-card{
  aspect-ratio:1;
  width:140px;
  height:140px;
  padding:10px;
  border-radius:0;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  text-align:center;
  box-sizing:border-box;
  background:#F5E6D3;
  color:#5C4033;
  border:1px solid rgba(0,0,0,0.1);
  transition:transform 0.2s;
  cursor:pointer;
}
.office-board__content .empty-card:hover{
  transform:translateY(-2px) scale(1.05);
  z-index:1;
}

/* Flash messages */
.flash-messages{
  position:fixed;
  top:50%;
  left:50%;
  transform:translate(-50%,-50%);
  z-index:2000;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:8px;
  pointer-events:none;
}
/* Flash messages внутри tasks-board - позиционирование слева, выровнено по высоте с кнопкой + (40px от верха) */
.tasks-board .flash-messages,
.tasks-board ~ .flash-messages,
#tasksBoard .flash-messages{
  position:absolute;
  top:40px;
  bottom:auto;
  left:0;
  right:auto;
  transform:none;
  align-items:flex-start;
  margin-top:0;
  z-index:100;
}
.tasks-board .flash-message,
.tasks-board ~ .flash-message,
#tasksBoard .flash-message{
  margin-bottom:0;
}
.flash-message{padding:12px 16px;border-radius:8px;margin-bottom:10px;display:flex;justify-content:center;align-items:center;animation:slideIn 0.3s ease-out;position:relative;text-align:center;}
.toast-message{
  min-width:180px;
  max-width:320px;
  box-shadow:0 6px 20px rgba(0,0,0,0.12);
  padding: 16px 24px;
  background: var(--panel);
  border: 1px solid var(--border, #e0e0e0);
  border-radius: var(--radius);
  font-size: 16px;
  font-weight: 500;
  text-align: center;
  animation: fadeIn 0.3s ease-out;
}

@keyframes fadeIn {
  from {
    opacity: 0;
    transform: translate(-50%, -50%) scale(0.9);
  }
  to {
    opacity: 1;
    transform: translate(-50%, -50%) scale(1);
  }
}

.flash-success {
  color: #2e7d32;
  background: #e8f5e9;
  border-color: #4caf50;
}
.flash-success{background:#e8f5e9;color:#2e7d32;border:1px solid #81c784;}
.flash-error{background:#ffebee;color:#c62828;border:1px solid #ef5350;}
.flash-ok{background:#e8f5e9;color:#2e7d32;border:1px solid #81c784;}
@keyframes slideIn{from{opacity:0;transform:translateY(-10px);}to{opacity:1;transform:translateY(0);}}
@keyframes fadeOut{from{opacity:1;transform:translateY(0);}to{opacity:0;transform:translateY(-10px);}}

/* ====== БЛОК «СЕЙЧАС» — слева дата, справа нагрузка и стикеры ====== */
.now-block-wrap{
  display:flex;
  flex-direction:column;
  gap:24px;
  padding-bottom:16px;
  overflow:visible;
}
/* Высота ряда задаётся блоком с часами (квадрат); нагрузка и стикеры совпадают по высоте и выравниванию */
 по .now-block{
  display:flex;
  align-items:stretch;
  gap:24px;
  margin:0 40px 24px var(--hero-left-pad);
  max-width:100%;
  box-sizing:border-box;
}
.now-block--team{
  margin-top:0;
  min-height:264px;
  align-items:stretch;
  overflow:visible;
}
.now-block__card{
  border-radius:16px;
  padding:18px 20px;
  box-sizing:border-box;
}
/* Блок с часами — всегда квадратный, задаёт высоту ряда */
.now-block__card--time{
  flex-shrink:0;
  width:250px;
  height:250px;
  padding:24px;
  border:1px dashed rgba(0,0,0,0.2);
  background:transparent;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  gap:2px;
}
.now-block--team .now-block__card--time{
  width:264px;
  height:264px;
  border:1px dashed rgba(0,0,0,0.2);
}
.now-block__team{
  flex:1 1 auto;
  display:flex;
  flex-direction:column;
  justify-content:flex-start;
  min-height:264px;
}
.now-block__team-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  width:100%;
}
.now-block__team-name{
  font-size:32px;
  font-weight:400;
  color:#33363F;
  margin:0;
  flex:1 1 auto;
  min-width:0;
}
.now-block__team-avatars{
  display:flex;
  align-items:center;
  flex-wrap:nowrap;
  flex-shrink:0;
  /* совпадает с фоном карточки «Что происходит» (.now-block-compare__card--tabs / .tasks-board) */
  --now-team-avatar-surface:#F8F8F8;
  --now-team-avatar-border-default:rgba(0,0,0,0.14);
}
.now-block__team-avatar{
  box-sizing:border-box;
  width:48px;
  height:48px;
  border-radius:10px;
  flex-shrink:0;
  overflow:hidden;
  display:flex;
  align-items:center;
  justify-content:center;
  background:var(--now-team-avatar-surface);
  color:rgba(0,0,0,0.58);
  font-size:13px;
  font-weight:600;
  border:4px solid var(--now-team-avatar-border-default);
  margin-left:-12px;
  position:relative;
  z-index:0;
  cursor:default;
  transition:border-color 0.2s ease, box-shadow 0.2s ease, background 0.2s ease;
}
.now-block__team-avatar:not(.now-block__team-avatar--more){
  cursor:pointer;
}
.now-block__team-avatar:focus{
  outline:none;
}
.now-block__team-avatar:focus-visible{
  outline:2px solid var(--acc);
  outline-offset:2px;
}
/* 1-й клик — обводка как «таблетка» активного таба (--tasks-tab-rule) */
.now-block__team-avatar.now-block__team-avatar--ring-accent{
  border:4px solid transparent;
  background-image:
    linear-gradient(var(--now-team-avatar-surface), var(--now-team-avatar-surface)),
    linear-gradient(145deg, #29A3B1 0%, #12E195 100%);
  background-origin:border-box;
  background-clip:padding-box, border-box;
}
.now-block__team-avatar:first-child{
  margin-left:0;
  z-index:1;
}
.now-block__team-avatar:nth-child(2){ z-index:2; }
.now-block__team-avatar:nth-child(3){ z-index:3; }
.now-block__team-avatar:nth-child(4){ z-index:4; }
.now-block__team-avatar:nth-child(5){ z-index:5; }
.now-block__team-avatar:nth-child(6){ z-index:6; }
.now-block__team-avatar:nth-child(7){ z-index:7; }
.now-block__team-avatar:nth-child(8){ z-index:8; }
.now-block__team-avatar:nth-child(9){ z-index:9; }
.now-block__team-avatar:hover{
  z-index:20;
}
.now-block__team-avatar img{
  width:100%;
  height:100%;
  object-fit:cover;
}
.now-block__team-avatar--more{
  background:var(--now-team-avatar-surface);
  color:rgba(0,0,0,0.5);
  font-size:12px;
  font-weight:600;
  cursor:default;
}
.now-block__team-avatar[title]:hover::after{
  content:attr(title);
  position:absolute;
  left:50%;
  transform:translateX(-50%);
  bottom:100%;
  margin-bottom:6px;
  padding:8px 8px;
  background:#33363F;
  color:#fff;
  font-size:12px;
  font-weight:400;
  white-space:nowrap;
  border-radius:6px;
  z-index:100;
  pointer-events:none;
}
.now-block__team-avatar[title]:hover::before{
  content:'';
  position:absolute;
  left:0;
  right:0;
  top:0;
  bottom:0;
  z-index:99;
}
/* Блок для загрузки фото пользователя — такой же размер, как часы */
.now-block__card--photo{
  flex-shrink:0;
  width:250px;
  height:250px;
  padding:0;
  border:1px solid rgba(0,0,0,0.1);
  background:transparent;
  border-radius:16px;
  overflow:hidden;
  display:flex;
  align-items:stretch;
  justify-content:stretch;
}
.now-block__photo-zone{
  display:flex;
  align-items:center;
  justify-content:center;
  width:100%;
  height:100%;
  cursor:pointer;
  color:rgba(41,50,65,0.45);
  font-size:16px;
  transition:background 0.2s ease;
}
.now-block__photo-zone:hover{
  background:rgba(0,0,0,0.03);
}
.now-block__photo-input{
  position:absolute;
  width:0.1px;
  height:0.1px;
  opacity:0;
  overflow:hidden;
  z-index:-1;
}
.now-block__photo-placeholder{
  pointer-events:none;
}
.now-block__photo-preview{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  pointer-events:none;
}
.now-block__photo-zone{
  position:relative;
}
/* Нагрузка сегодня и Важно — два одинаковых блока по ширине и высоте */
.now-block__card--load{
  flex:1 1 0%;
  min-width:0;
  height:250px;
  max-height:250px;
  border:1px solid rgba(0,0,0,0.1);
  background:transparent;
  overflow:hidden;
  display:flex;
  flex-direction:column;
  padding:18px 20px;
}
.now-block__card--load .now-block__title{
  margin:0 0 auto 0;
  text-align:left;
}
/* Первый блок: вертикальная диаграмма (6 столбцов) */
.now-block__card--load .now-block__chart-area{
  flex-shrink:0;
  height:38%;
  min-height:60px;
  margin-top:auto;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  justify-content:flex-end;
  width:100%;
}
.now-block__card--load .now-block__chart-bars{
  display:flex;
  align-items:flex-end;
  gap:6px;
  height:100%;
  width:100%;
  padding-bottom:2px;
}
.now-block__card--load .now-block__chart-bar{
  flex:1;
  min-width:3px;
  max-width:10px;
  height:var(--bar-h, 20%);
  background:rgba(0,0,0,0.12);
  border-radius:1px 1px 0 0;
  transition:height 0.2s ease;
}
.now-block__card--load .now-block__chart-bar--current{
  background:rgba(0,0,0,0.28);
}
.now-block__card--load .now-block__chart-baseline{
  width:100%;
  height:1px;
  background:rgba(0,0,0,0.08);
  flex-shrink:0;
}

/* Дубль блока: диаграмма 24ч + маскот (только в .now-block--team) */
.now-block--team .now-block__team{
  overflow:visible;
  height:264px;
  min-height:264px;
}
.now-block--team .now-block__load-chart-wrap{
  position:relative;
  flex-shrink:0;
  margin-top:auto;
  margin-bottom:0;
  width:100%;
  min-width:0;
  min-height:110px;
  overflow:visible;
  display:flex;
  flex-direction:column;
  align-items:stretch;
  justify-content:flex-end;
  padding-bottom:0;
}
.now-block--team .now-block__chart-area--24h{
  flex:1 1 0%;
  min-width:0;
  display:flex;
  flex-direction:column;
  align-items:stretch;
  justify-content:flex-end;
  margin-left:0;
  position:relative;
  box-sizing:border-box;
  overflow-x:hidden;
  overflow-y:visible;
}
.now-block--team .now-block__chart-events{
  position:absolute;
  left:0;
  right:0;
  top:0;
  bottom:0;
  pointer-events:none;
  z-index:2;
}
.now-block--team .now-block__chart-event-marker{
  position:absolute;
  top:0;
  bottom:20px;
  left:0;
  transform:translateX(-50%);
  display:flex;
  flex-direction:column;
  align-items:center;
  min-width:0;
  pointer-events:none;
}
.now-block--team .now-block__chart-event-line{
  flex:1;
  width:1px;
  min-height:0;
  background:rgba(41,50,65,0.35);
}
.now-block--team .now-block__chart-event-label{
  flex-shrink:0;
  margin-bottom:4px;
  padding:0;
  font-size:14px;
  line-height:1.3;
  color:#33363F;
  text-align:center;
  background:none;
  border-radius:0;
  white-space:nowrap;
  max-width:160px;
  overflow:hidden;
  text-overflow:ellipsis;
  box-shadow:none;
}
.now-block--team .now-block__mascot{
  position:absolute;
  bottom:19px; /* низ маскота (ноги) на базовой линии шкалы: под ней 4px margin + шкала времени */
  left:50%;
  transform:translateX(-50%);
  width:115px;
  height:115px;
  background-image:url('/static/img/mascot.png');
  background-size:contain;
  background-repeat:no-repeat;
  background-position:bottom center;
  pointer-events:auto;
  cursor:grab;
  z-index:3;
}
.now-block--team .now-block__mascot.is-dragging{
  cursor:grabbing;
}
.now-block--team .now-block__chart-bars--24h{
  display:flex;
  align-items:flex-end;
  gap:2px;
  height:88px;
  width:100%;
  min-width:0;
  padding-bottom:0;
}
.now-block--team .now-block__chart-bar{
  flex:1 1 0%;
  min-width:2px;
  height:var(--bar-h, 0%);
  background:var(--load-chart-bar-bg, rgba(56,142,60,0.55));
  border-radius:2px 2px 0 0;
  transition:height 0.25s ease;
}
.now-block--team .now-block__chart-bar--current{
  background:var(--load-chart-bar-current-bg, rgba(46,125,50,0.7));
}
.now-block--team .now-block__chart-baseline{
  width:100%;
  height:1px;
  background:rgba(0,0,0,0.12);
  flex-shrink:0;
  position:relative;
  z-index:1;
}
.now-block--team .now-block__chart-timescale--24{
  display:flex;
  align-items:flex-start;
  width:100%;
  margin-top:4px;
  margin-bottom:0;
  font-size:10px;
  color:rgba(41,50,65,0.5);
  flex-shrink:0;
  gap:2px;
}
.now-block--team .now-block__chart-time-cell{
  flex:1;
  min-width:0;
  text-align:center;
}
.now-block--team .now-block__chart-time-cell--label{
  flex:1;
  min-width:0;
  text-align:center;
  white-space:nowrap;
}
.now-block--team .now-block__chart-time-cell--label:last-child{
  min-width:1.2em;
}

/* Живой ввод заметок: отдельный ряд после первого блока, та же сетка */
.now-block-wrap > .now-block__live-notes{
  margin-left:var(--hero-left-pad);
  margin-right:40px;
  margin-bottom:32px;
  width:auto;
  max-width:100%;
  box-sizing:border-box;
}
.now-block__live-notes{
  min-width:0;
}
.now-block__note-slots{
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  gap:24px;
}
@media (max-width: 1200px) {
  .now-block__note-slots { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 768px) {
  .now-block__note-slots { grid-template-columns: 1fr; }
}
/* Общие: уменьшенная высота, прозрачный фон */
.now-block__note-slot{
  min-height:64px;
  border-radius:16px;
  padding:14px 18px;
  box-sizing:border-box;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:14px;
  line-height:1.4;
  color:var(--ink);
  background:transparent;
}
/* Первая карточка: поле с подсказкой — тонкая обводка, не пунктир */
.now-block__note-slot--active{
  border:1px solid rgba(0,0,0,0.22);
  background:transparent;
}
/* Текст-подсказка в первой карточке (светло-серый placeholder), по центру */
.now-block__note-placeholder{
  color:rgba(41,50,65,0.45);
  font-size:14px;
  line-height:1.4;
  cursor:pointer;
  width:100%;
  text-align:center;
}
.now-block__note-placeholder:hover{
  color:rgba(41,50,65,0.6);
}
/* Вторая и третья карточки: призрачные слоты, пунктир, плюсик по центру */
.now-block__note-slot--ghost{
  border:1px dashed rgba(0,0,0,0.12);
  background:transparent;
  justify-content:center;
  opacity:0.9;
}
.now-block__note-slot--ghost[role="button"]{
  cursor:pointer;
}
.now-block__note-slot-plus{
  display:flex;
  align-items:center;
  justify-content:center;
  width:32px;
  height:32px;
  color:rgba(41,50,65,0.35);
  font-size:24px;
  line-height:1;
  font-weight:300;
  pointer-events:none;
}
.now-block__note-slot--ghost:hover .now-block__note-slot-plus{
  color:rgba(41,50,65,0.5);
}
/* Заполненный слот (сохранённая заметка) */
.now-block__note-slot--filled{
  border:1px solid rgba(0,0,0,0.15);
  background:transparent;
}
.now-block__note-input{
  width:100%;
  min-width:0;
  padding:0;
  margin:0;
  border:none;
  outline:none;
  background:transparent;
  font-size:14px;
  line-height:1.4;
  font-family:inherit;
  color:var(--ink);
  text-align:center;
}
.now-block__note-input::placeholder{
  color:rgba(41,50,65,0.45);
}
.now-block__note-text{
  word-break:break-word;
  flex:1;
  min-width:0;
  text-align:center;
}
.now-block__note-slot .now-block__important-item-delete{
  margin-left:4px;
}

.now-block__card--important{
  flex:1 1 0%;
  min-width:0;
  height:200px;
  max-height:200px;
  border:1px solid rgba(0,0,0,0.1);
  background:transparent;
  overflow:hidden;
  display:flex;
  flex-direction:column;
  padding:18px 20px;
}
.now-block__card--important .now-block__title{
  margin:0 0 12px 0;
  text-align:left;
}
.now-block__important-placeholder{
  margin:0;
  color:rgba(41,50,65,0.4);
  font-size:18px;
  line-height:1.4;
}
/* Стикер и плюс в ряд после нагрузки (скрыты при текущей структуре) */
.now-block__stickers-wrap{
  display:flex;
  align-items:stretch;
  gap:24px;
  flex-shrink:0;
}
/* Основной стикер — сплошная обводка, тот же размер */
.now-block__card--sticker{
  flex-shrink:0;
  width:200px;
  height:200px;
  padding:24px;
  border:1px solid rgba(0,0,0,0.18);
  background:transparent;
  border-radius:16px;
  box-sizing:border-box;
  font-size:14px;
  line-height:1.3;
  color:var(--ink);
  word-break:break-word;
  cursor:pointer;
  display:flex;
  align-items:stretch;
  justify-content:stretch;
}
.now-block__card--sticker:hover{
  border-color:rgba(0,0,0,0.3);
}
/* Стикер-призрак: пунктир, бледный, в центре плюс */
.now-block__card--sticker-ghost{
  flex-shrink:0;
  width:200px;
  height:200px;
  padding:24px;
  border:1px dashed rgba(0,0,0,0.12);
  background:transparent;
  border-radius:16px;
  box-sizing:border-box;
  display:flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  opacity:0.7;
}
.now-block__card--sticker-ghost:hover{
  opacity:0.9;
  border-color:rgba(0,0,0,0.2);
}
.now-block__sticker-ghost-plus{
  font-size:32px;
  line-height:1;
  color:rgba(41,50,65,0.4);
  font-weight:300;
}
.now-block__card--sticker-ghost:hover .now-block__sticker-ghost-plus{
  color:rgba(41,50,65,0.6);
}
.now-block__sticker-body{
  flex:1;
  min-width:0;
  min-height:0;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  position:relative;
}
.now-block__sticker-placeholder{
  color:rgba(41,50,65,0.5);
  font-style:italic;
  font-size:14px;
  line-height:1.4;
  padding:8px;
  pointer-events:none;
}
.now-block__sticker-content{
  padding:8px;
  overflow:auto;
  width:100%;
  height:100%;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  word-break:break-word;
}
.now-block__sticker-input{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  padding:16px;
  margin:0;
  border:none;
  background:transparent;
  font:inherit;
  font-size:14px;
  line-height:1.4;
  color:var(--ink);
  resize:none;
  outline:none;
  box-sizing:border-box;
  text-align:center;
}
.now-block__sticker-input::placeholder{
  color:rgba(41,50,65,0.5);
  font-style:italic;
}
.now-block__card--sticker.is-editing{
  cursor:default;
}
.now-block__card--sticker.is-editing .now-block__sticker-placeholder,
.now-block__card--sticker.is-editing .now-block__sticker-content{
  display:none !important;
}
.now-block__card--sticker.is-editing .now-block__sticker-input{
  display:block !important;
}
.now-block__card--sticker .now-block__sticker-input{
  display:none;
}
.now-block__card--sticker.has-content .now-block__sticker-placeholder{
  display:none;
}
.now-block__card--sticker:not(.has-content) .now-block__sticker-content{
  display:none !important;
}

/* ====== Дубль блока (нижний ряд): карточка с диаграммой + один крупный тег + ghost ====== */
.now-block--copy .now-block__card--load-chart{
  display:flex;
  flex-direction:column;
  padding:18px 20px;
  flex:1 1 0%;
  min-width:0;
}
.now-block--copy .now-block__tags-wrap{
  flex:1 1 0%;
  min-width:0;
  display:flex;
  align-items:stretch;
  gap:24px;
}
/* Дубль: зона тегов с переносом — теги и «+» внутри одной зоны, не ломают layout */
.now-block--copy .now-block__tags-wrap--copy{
  align-items:flex-start;
  gap:0;
  border:none;
  background:transparent;
  padding:0;
  min-width:0;
  overflow:hidden;
}
.now-block--copy .now-block__tags-wrap--copy .now-block__tags-list{
  flex:1 1 0%;
  min-width:0;
  display:flex;
  flex-wrap:wrap;
  align-items:flex-start;
  align-content:flex-start;
  gap:24px;
}
.now-block--copy .now-block__tags-list{
  flex:1 1 0%;
  min-width:0;
  display:flex;
  align-items:stretch;
  gap:0;
}
.now-block--copy .now-block__card--load-chart .now-block__title{
  margin:0 0 auto 0;
  text-align:left;
  line-height:24px;
  font-size:20px;
}
.now-block__chart-area{
  flex-shrink:0;
  height:38%;
  min-height:60px;
  margin-top:auto;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  justify-content:flex-end;
  width:100%;
}
.now-block__chart-bars{
  display:flex;
  align-items:flex-end;
  gap:8px;
  height:100%;
  width:100%;
  padding-bottom:2px;
}
.now-block__chart-bar{
  flex:1;
  min-width:4px;
  max-width:16px;
  height:var(--bar-h, 20%);
  background:rgba(41,50,65,0.2);
  border-radius:1px 1px 0 0;
  transition:height 0.2s ease;
}
.now-block__chart-bar--current{
  background:rgba(41,50,65,0.45);
}
.now-block__chart-baseline{
  width:100%;
  height:1px;
  background:rgba(0,0,0,0.12);
  flex-shrink:0;
}
.now-block__tags-wrap{
  display:flex;
  align-items:flex-start;
  flex-wrap:wrap;
  gap:8px 12px;
  align-self:stretch;
}
/* Верхний ряд: зона тегов справа от «Нагрузка сегодня» — без карточки, один ряд чипов */
.now-block__tags-wrap--top{
  flex:1 1 0%;
  min-width:0;
  border:none;
  background:transparent;
  padding:0;
  gap:8px;
}
.now-block__tags-wrap--top .now-block__tags-list{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:8px;
}
.now-block__tags-list{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:8px;
  min-height:0;
}
/* Теги «Важно» — по умолчанию chip/pill; в дубле — крупные карточки */
.now-block__tag{
  display:inline-flex;
  align-items:center;
  padding:0 14px;
  height:36px;
  border-radius:16px;
  border:1px solid rgba(41,50,65,0.22);
  background:transparent;
  color:rgba(41,50,65,0.75);
  font-size:13px;
  line-height:1.3;
  font-family:inherit;
  white-space:nowrap;
  flex-shrink:0;
  cursor:default;
  box-sizing:border-box;
}
/* Верхний ряд: тег как маленький chip (pill), без фона, ширина по тексту */
.now-block__tag--chip{
  border-radius:999px;
  height:32px;
  padding:0 12px;
  font-size:13px;
}
.now-block__tag--chip.is-editable{
  cursor:pointer;
}
/* Дубль: крупный тег — отступ сверху и снизу одинаковый */
.now-block--copy .now-block__tags-wrap--copy .now-block__tag--large{
  width:187px;
  min-width:187px;
  min-height:56px;
  padding:12px 16px;
  border-radius:16px;
  border:1px solid rgba(41,50,65,0.22);
  background:transparent;
  font-size:20px;
  line-height:24px;
  white-space:normal;
  word-break:break-word;
  text-align:center;
  align-items:center;
  justify-content:center;
  box-sizing:border-box;
  flex-shrink:0;
}
/* Подсказка «Важно» — мельче и светло-серый */
.now-block--copy .now-block__tags-wrap--copy .now-block__tag--large.is-placeholder{
  font-size:14px;
  color:rgba(41,50,65,0.45);
}
.now-block--copy[data-can-edit="true"] .now-block__tag{
  cursor:pointer;
}
.now-block__tag:hover{
  border-color:rgba(41,50,65,0.35);
  color:rgba(41,50,65,0.9);
}
.now-block__tag.is-editing{
  padding:0;
  min-width:80px;
}
.now-block--copy .now-block__tags-wrap--copy .now-block__tag--large.is-editing{
  padding:12px 16px;
  min-height:56px;
  min-width:187px;
}
/* После Enter: оформленная задача — тот же размер (14px), только темнее */
.now-block--copy .now-block__tags-wrap--copy .now-block__tag--large:not(.is-placeholder){
  font-size:14px;
  color:rgba(41,50,65,0.9);
}
.now-block__tag-input{
  width:100%;
  min-width:60px;
  height:100%;
  padding:0 14px;
  border:none;
  background:transparent;
  font:inherit;
  font-size:13px;
  color:rgba(41,50,65,0.9);
  outline:none;
  box-sizing:border-box;
  border-radius:16px;
}
/* При вводе: тот же размер и цвет, что у подсказки; без внутренней обводки при фокусе */
.now-block--copy .now-block__tags-wrap--copy .now-block__tag-input{
  font-size:14px;
  line-height:1.3;
  padding:0;
  text-align:center;
  color:rgba(41,50,65,0.45);
  outline:none;
  box-shadow:none;
}
.now-block--copy .now-block__tags-wrap--copy .now-block__tag-input:focus{
  outline:none;
  box-shadow:none;
  border:none;
}
.now-block--copy .now-block__tags-wrap--copy .now-block__tag-input::selection{
  background:rgba(41,50,65,0.12);
}
.now-block__tag-input::placeholder{
  color:rgba(41,50,65,0.5);
}
/* Призрак добавления — по умолчанию пилюля */
.now-block__tag-ghost{
  flex-shrink:0;
  min-width:40px;
  height:36px;
  padding:0 14px;
  border:1px dashed rgba(41,50,65,0.22);
  border-radius:16px;
  background:transparent;
  color:rgba(41,50,65,0.5);
  font-size:18px;
  line-height:1;
  font-weight:300;
  cursor:pointer;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  box-sizing:border-box;
}
/* Дубль: ghost того же размера, что и основной тег */
.now-block--copy .now-block__tags-wrap--copy .now-block__tag-ghost{
  flex:0 0 auto;
  width:187px;
  min-width:187px;
  min-height:56px;
  padding:0;
  border-radius:16px;
  border:1px dashed rgba(41,50,65,0.22);
  font-size:28px;
}
/* Верхний ряд: кнопка «+» как маленький chip */
.now-block__tag-ghost--chip{
  width:32px;
  min-width:32px;
  height:32px;
  padding:0;
  border-radius:999px;
  font-size:18px;
}
/* Верхний ряд: поле ввода нового тега в одну линию с чипами */
.now-block__tag-input-inline{
  height:32px;
  padding:0 12px;
  border:1px solid rgba(41,50,65,0.22);
  border-radius:999px;
  background:transparent;
  font-size:13px;
  font-family:inherit;
  color:var(--ink);
  min-width:80px;
  max-width:200px;
  box-sizing:border-box;
  outline:none;
}
.now-block__tag-input-inline:focus{
  border-color:rgba(41,50,65,0.4);
}
.now-block__tag-input-inline::placeholder{
  color:rgba(41,50,65,0.45);
}
.now-block__tag-ghost:hover{
  border-color:rgba(41,50,65,0.35);
  color:rgba(41,50,65,0.7);
}
.now-block__time{
  font-size:56px;
  font-weight:400;
  color:var(--ink);
  line-height:1.2;
  font-variant-numeric:tabular-nums;
}
.now-block__date{
  font-size:24px;
  color:rgba(41,50,65,0.7);
}
/* Отступ от «Нагрузка сегодня» до шкалы — меняйте margin-bottom (третье значение) */
.now-block__title{
  font-size:20px;
  font-weight:400;
  color:var(--ink);
  margin:0 0 20px 0;
}
/* Отступ от шкалы/слайдера до «Важно» — меняйте margin-bottom */
.now-block__load-wrap{
  margin-bottom:38px;
}
.now-block__load-bar{
  height:6px;
  background:rgba(0,0,0,0.08);
  border-radius:4px;
  overflow:visible;
  position:relative;
}
.now-block__load-fill{
  height:100%;
  background:var(--acc);
  border-radius:4px;
  transition:width 0.2s ease;
  pointer-events:none;
}
.now-block__load-slider{
  position:absolute;
  left:0;
  top:50%;
  transform:translateY(-50%);
  width:100%;
  height:24px;
  margin:0;
  -webkit-appearance:none;
  appearance:none;
  background:transparent;
  cursor:pointer;
  outline:none;
}
.now-block__load-slider:disabled{
  cursor:not-allowed;
  opacity:0.7;
}
.now-block__load-slider::-webkit-slider-thumb{
  -webkit-appearance:none;
  width:8px;
  height:24px;
  border-radius:2px;
  background:var(--acc);
  cursor:pointer;
  box-shadow:0 1px 3px rgba(0,0,0,0.2);
}
.now-block__load-slider::-moz-range-thumb{
  width:8px;
  height:24px;
  border-radius:2px;
  background:var(--acc);
  cursor:pointer;
  border:none;
  box-shadow:0 1px 3px rgba(0,0,0,0.2);
}
/* «Важно:» всегда на уровне первой строки (top), не по центру многострочного блока */
.now-block__important-wrap{
  font-size:14px;
  line-height:1.4;
  color:var(--ink);
  display:flex;
  flex-wrap:wrap;
  align-items:flex-start;
  gap:4px 8px;
}
.now-block__important-label{
  flex-shrink:0;
  font-weight:400;
  line-height:1.4;
  color:rgba(41,50,65,0.8);
  border:none;
  padding:0;
  margin:0;
}
.now-block__important-inner{
  flex:1;
  min-width:0;
  display:flex;
  flex-wrap:wrap;
  align-items:flex-start;
  gap:6px 8px;
  min-height:1.4em;
  line-height:1.4;
}
.now-block__important-list{
  display:inline-flex;
  flex-wrap:wrap;
  align-items:flex-start;
  gap:6px 8px;
  line-height:1.4;
}
/* Теги в одну строку с переносом, едва заметная обводка; удаление внутри тега справа от текста */
.now-block__important-item{
  display:inline-flex;
  align-items:baseline;
  border:1px solid rgba(41,50,65,0.12);
  border-radius:4px;
  padding:2px 4px 2px 8px;
  cursor:default;
  white-space:nowrap;
  gap:2px;
}
.now-block__important-item.is-editable{
  cursor:pointer;
}
.now-block__important-item.is-editable:hover{
  border-color:rgba(41,50,65,0.25);
}
.now-block__important-item-delete{
  padding:0 2px;
  color:rgba(41,50,65,0.45);
  cursor:pointer;
  font-size:14px;
  line-height:1;
  flex-shrink:0;
}
.now-block__important-item-delete:hover{
  color:var(--acc);
}
/* Лаконичный плюсик справа от последнего тега */
.now-block__important-plus{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:1.5em;
  height:1.5em;
  padding:0;
  border:1px solid rgba(41,50,65,0.15);
  border-radius:4px;
  background:transparent;
  color:rgba(41,50,65,0.6);
  font-size:14px;
  line-height:1;
  cursor:pointer;
  flex-shrink:0;
}
.now-block__important-plus:hover{
  border-color:rgba(41,50,65,0.35);
  color:var(--ink);
}
/* Каретка не должна подпрыгивать: default и focus — одинаковые метрики (border/outline/box-shadow/padding/height/line-height) */
.now-block__important-input{
  font-size:14px;
  line-height:1.4;
  padding:0 8px;
  margin:0;
  border:none;
  outline:none;
  box-shadow:none;
  color:var(--ink);
  background:transparent;
  min-width:80px;
  max-width:200px;
  box-sizing:border-box;
  flex-shrink:0;
  font-family:inherit;
  font-weight:400;
  display:inline-block;
  height:1.4em;
}
.now-block__important-input:focus{
  outline:none;
  border:none;
  box-shadow:none;
  padding:0 8px;
  height:1.4em;
  line-height:1.4;
  font-size:14px;
}
/* Плейсхолдер и введённый текст — одинаковые font-size, line-height, font-weight */
.now-block__important-input::placeholder{
  color:rgba(41,50,65,0.4);
  font-size:14px;
  line-height:1.4;
  font-family:inherit;
  font-weight:400;
}
/* Подсказка: те же метрики, что и поле ввода (чтобы первая строка не дергалась при переключении) */
.now-block__important-empty{
  color:rgba(41,50,65,0.55);
  font-style:italic;
  font-size:14px;
  line-height:1.4;
  font-weight:400;
  border:none;
}
.now-block__important-empty.is-clickable{
  cursor:pointer;
  min-height:1.4em;
  display:inline-block;
}
.now-block__important-empty.is-clickable:hover{
  color:rgba(41,50,65,0.85);
}

/* ====== БЛОК ЗАДАЧ С ТАБАМИ ====== */
.tasks-board{
  /* Табы: цвет текста и полоски раздельно.
   * --tasks-tab-rule-width: доля ширины колонки подписи (100% = как текст).
   * --tasks-tab-rule-bleed: на сколько px шире таблетка с каждой стороны относительно текста (100% не обойти без этого).
   * --tasks-tab-strip: зона под подписью; серая линия по центру зоны, «таблетка» тем же центром.
   * Шире таб: увеличьте --tasks-tab-padding-x и/или --tasks-tab-min-width.
   * --tasks-tab-lift: поднять серую линию и зелёную таблетку вместе (например 6–10px); не больше ~strip/2, иначе уедут в текст. */
  --tasks-tab-lift:18px;
  --tasks-tab-text:#141922;
  --tasks-tab-text-active:#141922;
  /* Активная «таблетка» под подписью — как чекбокс «Важно» */
  --tasks-tab-rule:linear-gradient(145deg, #29A3B1 0%, #12E195 100%);
  --tasks-tab-rule-height:10px;
  --tasks-tab-rule-radius:999px;
  --tasks-tab-rule-width:100%;
  --tasks-tab-rule-bleed:12px;
  --tasks-tab-baseline:rgba(0,0,0,0.12);
  --tasks-tab-baseline-height:1px;
  --tasks-tab-strip:16px;
  --tasks-tab-padding-x:28px;
  --tasks-tab-padding-y:12px;
  --tasks-tab-min-width:0;

  background:#FAFAFA;
  border:1px solid rgba(0,0,0,0.1);
  border-radius:16px;
  padding:18px;
  margin:0;
  margin-bottom:24px;
  box-sizing:border-box;
  display:block;
}
.app > .tasks-board{
  margin-left:var(--hero-left-pad) !important;
  margin-right:40px !important;
  width:auto;
  max-width:100%;
  box-sizing:border-box;
}
.tasks-board__tabs{
  display:flex;
  flex-wrap:wrap;
  align-items:flex-end;
  gap:8px;
  /* Серая линия по центру полосы --tasks-tab-strip под подписями; «таблетка» смещается translateY под тот же центр. */
  padding-bottom:var(--tasks-tab-strip);
  margin-bottom:calc(20px + var(--tasks-tab-strip) / 2);
  position:relative;
  z-index:10;
  overflow:visible;
}
.tasks-board__tabs::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:calc(var(--tasks-tab-strip) / 2 - var(--tasks-tab-baseline-height) / 2 + var(--tasks-tab-lift));
  height:var(--tasks-tab-baseline-height);
  background:var(--tasks-tab-baseline);
  z-index:0;
  pointer-events:none;
}
.tasks-board__tab{
  /* flex-shrink:0 — иначе ряд табов сжимает кнопки уже текста; полоска — span внутри .tasks-board__tab-inner. */
  flex:0 0 auto;
  display:inline-flex;
  justify-content:center;
  padding:var(--tasks-tab-padding-y) var(--tasks-tab-padding-x);
  min-width:var(--tasks-tab-min-width);
  box-sizing:border-box;
  font-size:20px;
  font-weight:400;
  color:var(--tasks-tab-text);
  background:none;
  border:none;
  cursor:pointer;
  transition:color 0.3s ease, opacity 0.3s ease;
  position:relative;
  opacity:0.6;
  z-index:10;
  pointer-events:auto;
  overflow:visible;
  -webkit-appearance:none;
  appearance:none;
}
.tasks-board__tab-inner{
  /* inline-grid + одна колонка по ширине подписи: тогда width:% у полоски — от определённой ширины колонки, не цикл с max-content. */
  display:inline-grid;
  grid-template-columns:minmax(0, max-content);
  row-gap:8px;
  justify-items:stretch;
  max-width:100%;
  overflow:visible;
}
.tasks-board__tab-label{
  grid-column:1;
  grid-row:1;
  line-height:1.3;
  text-align:center;
}
.tasks-board__tab-rule{
  grid-column:1;
  grid-row:2;
  width:calc(var(--tasks-tab-rule-width) + 2 * var(--tasks-tab-rule-bleed));
  max-width:none;
  margin-inline:calc(-1 * var(--tasks-tab-rule-bleed));
  justify-self:center;
  height:var(--tasks-tab-rule-height);
  min-height:var(--tasks-tab-rule-height);
  border-radius:var(--tasks-tab-rule-radius);
  background:transparent;
  transition:background 0.25s ease;
  position:relative;
  z-index:2;
  /* Центр серой линии: C + strip/2. Центр таблетки в потоке: (низ padding-box кнопки) − H/2 = C − padding-y − H/2. Сдвиг вниз: strip/2 + H/2 + padding-y. */
  transform:translateY(calc(var(--tasks-tab-strip) / 2 + var(--tasks-tab-rule-height) / 2 + var(--tasks-tab-padding-y) - var(--tasks-tab-lift)));
}
.tasks-board__tab:hover{
  opacity:1;
}
.tasks-board__tab.active{
  opacity:1;
  color:var(--tasks-tab-text-active);
}
.tasks-board__tab.active .tasks-board__tab-rule{
  background:var(--tasks-tab-rule);
}
.tasks-board__content{
  position:relative;
  min-height:200px;
}
/* Flash messages внутри tasks-board__panel - выровнено по высоте с кнопкой + */
.tasks-board__panel .flash-messages,
#toastContainer{
  position:absolute !important;
  top:0 !important;
  bottom:auto !important;
  left:0 !important;
  right:auto !important;
  transform:none !important;
  align-items:flex-start !important;
  margin:0 !important;
  padding:0 !important;
  z-index:100 !important;
}
.tasks-board__panel .flash-message,
#toastContainer .flash-message{
  margin:0 !important;
  padding-top:0 !important;
  padding-bottom:12px !important;
  padding-left:16px !important;
  padding-right:16px !important;
}
.tasks-board__panel .toast-message,
#toastContainer .toast-message{
  margin:0 !important;
  padding-top:0 !important;
  padding-bottom:12px !important;
  padding-left:16px !important;
  padding-right:16px !important;
  border-top:0 !important;
  border-left:1px solid #e0e0e0 !important;
  border-right:1px solid #e0e0e0 !important;
  border-bottom:1px solid #e0e0e0 !important;
  box-shadow:0 6px 20px rgba(0,0,0,0.12) !important;
}
.tasks-board__panel{
  display:none;
  animation:none;
  position:relative !important;
}
.tasks-board__panel.active{
  display:block;
  animation:none;
  position:relative !important;
}
.tasks-board__panel .office-board{
  border:none;
  padding:0;
  margin:0;
  background:transparent;
}
/* Content теперь начинается с top:0, как и кнопка (оба в панели) */
.tasks-board__panel .office-board{
  width:100% !important;
  max-width:100% !important;
  display:block !important;
}
.tasks-board__panel .office-board__content{
  display:flex !important;
  flex-direction:row !important;
  flex-wrap:wrap !important;
  gap:12px !important;
  margin-top:0 !important;
  padding-top:0 !important;
  justify-content:flex-start !important;
  align-items:flex-start !important;
  align-content:flex-start !important;
  width:100% !important;
  max-width:none !important;
}
/* layout-compare: стикеры «Что происходит» — по левому краю (как зеленая «таблетка»), с равными отступами/промежутками */
.app--layout-compare-wrap{
  /* Отступы в карточке табов задаёт .tasks-board (padding:18px). */
  --compare-sticker-gap: 8mm;
  --compare-sticker-cols: 5; /* 4 стикера + «+» */
  /* Один ряд, без "выпирания" — так проще избежать клиппинга */
  --compare-sticker-scale: 1;
  --compare-sticker-overscan: 0px;
}
.app--layout-compare-wrap #officeBoardWhatsHappening .office-board__content:not(.office-status-feed){
  /* Один визуальный ряд: 5 равных колонок; длинный текст не ломает квадрат (см. line-clamp у текста) */
  display:grid !important;
  grid-template-columns:repeat(var(--compare-sticker-cols), minmax(0, 1fr)) !important;
  /* Строго один ряд */
  grid-template-rows:1fr !important;
  grid-auto-flow:column;
  grid-auto-columns:minmax(0, 1fr);
  gap:var(--compare-sticker-gap) !important;
  justify-content:stretch !important;
  align-items:stretch !important;
  align-content:start !important;
  /* Левый край = старт зелёной «таблетки» активного таба (padding-x минус bleed) */
  padding-left:calc(var(--tasks-tab-padding-x) - var(--tasks-tab-rule-bleed) + var(--compare-sticker-overscan)) !important;
  /* Симметрично слева: иначе последний стикер («+») клиппится при scale(...) */
  padding-right:calc(var(--tasks-tab-padding-x) - var(--tasks-tab-rule-bleed) + var(--compare-sticker-overscan)) !important;
  /* Запас сверху/снизу под scale(...) — без сдвига всего ряда вниз */
  padding-top:0 !important;
  padding-bottom:0 !important;
  box-sizing:border-box;
  /* Лишние стикеры (если их больше 5) не добавляют второй ряд */
  overflow-x:hidden !important;
  overflow-y:hidden !important;
}
.app--layout-compare-wrap #officeBoardWhatsHappening .office-board__content:not(.office-status-feed) > *{
  border-radius:16px !important;
  width:100% !important;
  max-width:none !important;
  min-width:0 !important;
  min-height:0 !important;
  height:auto !important;
  aspect-ratio:1 !important;
  overflow:hidden !important;
  transform:scale(var(--compare-sticker-scale));
  transform-origin:center center;
}
.app--layout-compare-wrap #officeBoardWhatsHappening .office-status-card__text{
  font-size:15px;
  line-height:1.25;
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:4;
  line-clamp:4;
  overflow:hidden;
  word-break:break-word;
  max-width:100%;
}
/* Пустой слот и «+» — без заливки; цвет заполненных карточек — из модалки (классы --beige и т.д.), не из правок CSS */
.app--layout-compare-wrap #officeBoardWhatsHappening .empty-office-status-card,
.app--layout-compare-wrap #officeBoardWhatsHappening .office-status-card-ghost{
  background:transparent !important;
  border:1px solid rgba(0,0,0,0.10) !important;
  box-shadow:none !important;
  color:rgba(51,54,63,0.82) !important;
  padding:10px !important;
  box-sizing:border-box !important;
  aspect-ratio:1 !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  text-align:center !important;
  min-height:0 !important;
  overflow:hidden !important;
}
.app--layout-compare-wrap #officeBoardWhatsHappening .office-status-card{
  border:1px solid var(--block-border-panel) !important;
  box-shadow:none !important;
  padding:10px !important;
  box-sizing:border-box !important;
  aspect-ratio:1 !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  text-align:center !important;
  min-height:0 !important;
  overflow:hidden !important;
}
.app--layout-compare-wrap #officeBoardWhatsHappening .office-status-card.office-status-card--beige{
  background:#F5E6D3 !important;
  color:#5C4033 !important;
}
.app--layout-compare-wrap #officeBoardWhatsHappening .office-status-card.office-status-card--green{
  background:#D4EDDA !important;
  color:#155724 !important;
}
.app--layout-compare-wrap #officeBoardWhatsHappening .office-status-card.office-status-card--orange{
  background:#FFE5B4 !important;
  color:#8B4513 !important;
}
.app--layout-compare-wrap #officeBoardWhatsHappening .office-status-card.office-status-card--red{
  background:#FFE5E5 !important;
  color:#8B0000 !important;
}
.app--layout-compare-wrap #officeBoardWhatsHappening .office-status-card:hover{
  transform:scale(var(--compare-sticker-scale)) !important;
}
.app--layout-compare-wrap #officeBoardWhatsHappening .empty-office-status-card:hover,
.app--layout-compare-wrap #officeBoardWhatsHappening .office-status-card-ghost:hover{
  transform:scale(var(--compare-sticker-scale)) !important;
}
/* Предки с overflow:hidden обрезали scale стикеров по краям карточки табов */
.app--layout-compare-wrap .now-block-compare__card--tabs .tasks-board__content:has(#panelWhatsHappening.tasks-board__panel.active){
  overflow-x:visible !important;
}
.app--layout-compare-wrap .now-block-compare__card--tabs #panelWhatsHappening.tasks-board__panel.active{
  overflow-x:visible !important;
}
.app--layout-compare-wrap #officeBoardWhatsHappening.office-board{
  overflow-x:visible !important;
}
.app--layout-compare-wrap #officeBoardWhatsHappening .office-status-card__actions{
  opacity:1;
}
.app--layout-compare-wrap #officeBoardWhatsHappening .office-status-card__edit,
.app--layout-compare-wrap #officeBoardWhatsHappening .office-status-card__delete{
  background:transparent;
  border:1px solid var(--block-border-panel);
}
/* layout-compare: лента статусов вместо стикеров */
.app--layout-compare-wrap #officeBoardWhatsHappening .office-board__content.office-status-feed{
  display:flex !important;
  flex-direction:column !important;
  /* Иначе из общего правила .office-board__content остаётся align-items:flex-start,
     и строки не растягиваются по ширине (подчёркивание получается коротким). */
  align-items:stretch !important;
  gap:0 !important;
  /* Боковые поля ленты; справа +20% к коэффициенту, чтобы текст/иконки не упирались в край */
  padding-left:calc(var(--tasks-tab-padding-x) * 0.30) !important;
  padding-right:calc(var(--tasks-tab-padding-x) * 0.36) !important;
  padding-top:6px !important;
  padding-bottom:6px !important;
  overflow:visible !important;
}
.app--layout-compare-wrap #officeBoardWhatsHappening .office-board__content.office-status-feed .empty-office-status-card{
  aspect-ratio:auto !important;
  width:auto !important;
  max-width:none !important;
  min-width:0 !important;
  min-height:0 !important;
  padding:14px 14px !important;
  border-radius:0 !important;
  align-items:flex-start !important;
  text-align:left !important;
  border:none !important;
  border-bottom:1px solid rgba(0,0,0,0.10) !important;
}
.app--layout-compare-wrap #officeBoardWhatsHappening .office-board__content.office-status-feed .empty-office-status-card .empty-card-text{
  line-height:1.2;
}
.app--layout-compare-wrap .office-status-feed__item{
  display:flex;
  gap:12px;
  align-items:flex-start;
  width:100%;
  box-sizing:border-box;
  padding:12px 14px;
  background:transparent;
  border:none;
  border-bottom:1px solid rgba(0,0,0,0.10);
  transition:background 0.15s ease;
}
.app--layout-compare-wrap .office-status-feed__item:hover{
  background:rgba(0,0,0,0.02);
}
.app--layout-compare-wrap .office-status-feed__edit-input{
  width:100%;
  min-height:42px;
  padding:0;
  border:none;
  background:transparent;
  resize:none;
  font:inherit;
  font-size:15px;
  line-height:1.35;
  color:rgba(0,0,0,0.58);
  outline:none;
}
.app--layout-compare-wrap #officeBoardWhatsHappening .office-board__content.office-status-feed .office-status-feed__item:first-child{
  padding-top:8px;
}
.app--layout-compare-wrap #officeBoardWhatsHappening .office-board__content.office-status-feed .office-status-feed__item:last-of-type{
  border-bottom:none;
}
.app--layout-compare-wrap .office-status-feed__avatar{
  width:40px;
  height:40px;
  flex:0 0 40px;
  border-radius:10px;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:14px;
  font-weight:700;
  color:rgba(0,0,0,0.58);
  background:linear-gradient(145deg, #29A3B1 0%, #12E195 100%);
}
.app--layout-compare-wrap .office-status-feed__avatar--sticker{
  background:transparent !important;
}
.app--layout-compare-wrap .office-status-feed__avatar--emoji{
  background:rgba(255,255,255,0.55) !important;
}
.app--layout-compare-wrap .office-status-feed__emoji{
  font-size:26px;
  line-height:1;
  display:block;
  transform:translateY(0.5px);
}
.app--layout-compare-wrap .office-status-feed__sticker{
  width:40px;
  height:40px;
  display:block;
  object-fit:contain;
  pointer-events:none;
  -webkit-user-drag:none;
  user-select:none;
}
.app--layout-compare-wrap .office-status-feed__avatar--v1{ background:linear-gradient(145deg, #29A3B1 0%, #12E195 100%); }
.app--layout-compare-wrap .office-status-feed__avatar--v2{ background:linear-gradient(145deg, #4AC6FC 0%, #5DF533 100%); }
.app--layout-compare-wrap .office-status-feed__avatar--v3{ background:linear-gradient(145deg, #8E2DE2 0%, #4A00E0 100%); }
.app--layout-compare-wrap .office-status-feed__avatar--v4{ background:linear-gradient(145deg, #F2994A 0%, #F2C94C 100%); }
.app--layout-compare-wrap .office-status-feed__avatar--v5{ background:linear-gradient(145deg, #EB5757 0%, #F64F59 100%); }
.app--layout-compare-wrap .office-status-feed__avatar--v6{ background:linear-gradient(145deg, #219653 0%, #6FCF97 100%); }
.app--layout-compare-wrap .office-status-feed__avatar--v7{ background:linear-gradient(145deg, #FC704A 0%, #F533D4 100%); }
.app--layout-compare-wrap .office-status-feed__body{
  flex:1;
  min-width:0;
}
.app--layout-compare-wrap .office-status-feed__header{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:10px;
}
.app--layout-compare-wrap .office-status-feed__author{
  font-size:14px;
  font-weight:600;
  color:rgba(0,0,0,0.78);
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.app--layout-compare-wrap .office-status-feed__text{
  margin-top:4px;
  font-size:15px;
  line-height:1.35;
  color:rgba(0,0,0,0.72);
  word-break:break-word;
}
.app--layout-compare-wrap .office-status-feed__actions{
  display:flex;
  gap:6px;
  flex-shrink:0;
  padding-top:1px;
  opacity:0;
  transition:opacity 0.15s ease;
}
.app--layout-compare-wrap .office-status-feed__item:hover .office-status-feed__actions{
  opacity:1;
}
.app--layout-compare-wrap .office-status-feed__edit,
.app--layout-compare-wrap .office-status-feed__delete{
  border:none;
  background:transparent;
  padding:3px;
  line-height:0;
  cursor:pointer;
  color:rgba(0,0,0,0.35);
}
/* Сдвиг только корзины к правому краю строки (очертания SVG), без изменения паддинга строки */
.app--layout-compare-wrap .office-status-feed__delete{
  margin-right:-8px;
  padding-right:2px;
  padding-left:4px;
}
.app--layout-compare-wrap .office-status-feed__delete svg path{
  stroke-width:1;
}
.app--layout-compare-wrap .office-status-feed__edit:hover,
.app--layout-compare-wrap .office-status-feed__delete:hover{
  color:rgba(0,0,0,0.6);
}
.app--layout-compare-wrap .office-status-feed__add{
  display:flex;
  align-items:center;
  gap:10px;
  padding:12px 14px;
  border:none;
  border-top:1px solid rgba(0,0,0,0.10);
  background:transparent;
  cursor:pointer;
  color:rgba(0,0,0,0.42);
  font:inherit;
}
.app--layout-compare-wrap .office-status-feed__add:hover{
  border-top-color:rgba(0,0,0,0.18);
  color:rgba(0,0,0,0.7);
}
.app--layout-compare-wrap .office-status-feed__add-plus{
  width:40px;
  height:40px;
  flex:0 0 40px;
  border-radius:10px;
  display:flex;
  align-items:center;
  justify-content:center;
  border:none;
  background:transparent;
  font-size:20px;
  line-height:1;
}
/* Убеждаемся, что flex-элементы не растягиваются */
.tasks-board__panel .office-board__content > *{
  width:140px !important;
  max-width:140px !important;
  min-width:140px !important;
  flex-shrink:0 !important;
  flex-grow:0 !important;
  box-sizing:border-box !important;
}
/* Но для ленты статусов в compare-режиме элементы должны быть по ширине контейнера */
.app--layout-compare-wrap #officeBoardWhatsHappening .office-board__content.office-status-feed > *{
  width:auto !important;
  max-width:none !important;
  min-width:0 !important;
  flex:0 0 auto !important;
}
/* Header скрыт */
.tasks-board__panel .office-board__header{
  display:none !important;
}
/* Уведомление в панели */
.tasks-board__panel .flash-messages,
.tasks-board__panel #toastContainer{
  position:absolute !important;
  top:0 !important;
  left:0 !important;
  right:auto !important;
  bottom:auto !important;
  transform:none !important;
  align-items:flex-start !important;
  margin:0 !important;
  padding:0 !important;
  z-index:2000 !important;
}

/* Контент "Чем занята команда" */
.team-busy-content{
  padding:0;
  margin:0;
}

/* «Мысли на потом» (layout-compare): черновики под «Важно», перенос в «Важно» или в задачи */
.later-thoughts{
  display:flex;
  flex-direction:column;
  gap:12px;
  min-width:0;
}
.later-thoughts__list{
  display:flex;
  flex-direction:column;
  gap:10px;
  min-height:0;
}
.later-thoughts__item{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  padding:12px 14px;
  border-radius:14px;
  background:rgba(255,255,255,0.65);
  border:1px solid var(--block-border-panel);
  box-sizing:border-box;
}
.later-thoughts__text{
  flex:1 1 auto;
  min-width:0;
  font-size:16px;
  line-height:1.35;
  color:rgba(51,54,63,0.82);
  word-break:break-word;
}
.later-thoughts__actions{
  flex:0 0 auto;
  display:flex;
  gap:8px;
  align-items:center;
}
.later-thoughts__btn{
  border:1px solid rgba(0,0,0,0.10);
  background:transparent;
  color:rgba(20,25,34,0.85);
  border-radius:999px;
  padding:6px 10px;
  font-size:13px;
  line-height:1;
  cursor:pointer;
}
.later-thoughts__btn:hover{
  border-color:rgba(0,0,0,0.18);
  color:rgba(20,25,34,0.95);
}
.later-thoughts__btn--danger{
  border-color:rgba(0,0,0,0.08);
  color:rgba(0,0,0,0.42);
}
.later-thoughts__input{
  width:100%;
  box-sizing:border-box;
  border-radius:14px;
  border:1px solid var(--block-border-panel);
  background:transparent;
  padding:12px 14px;
  font-size:16px;
  line-height:1.35;
  color:rgba(51,54,63,0.82);
  outline:none;
}
.later-thoughts__input:focus{
  border-color:rgba(0,0,0,0.22);
}
.team-busy-sections{
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  gap:32px;
}
@media (max-width: 1024px){
  .team-busy-sections{
    grid-template-columns:1fr 1fr;
  }
}
@media (max-width:767px){
  .team-busy-sections{
    grid-template-columns:1fr;
  }
}
/* Пробный макет (layout-compare): без карты занятости — две карточки на всю ширину вкладки, одинаковая высота ряда */
.team-busy-sections--compare{
  /* Вторая колонка («Смены редакторов») чуть уже первой («Мероприятия») */
  grid-template-columns:minmax(0, 1fr) minmax(0, 0.82fr);
  width:100%;
  align-items:stretch;
  box-sizing:border-box;
}
.team-busy-sections--compare .team-busy-section-card{
  min-width:0;
  height:100%;
}
.team-busy-sections--compare .team-busy-section{
  flex:1;
  min-height:0;
  /* Больше воздуха между заголовком и списком (обе колонки) */
  gap:20px;
}
.team-busy-sections--compare .team-busy-section__content{
  flex:1;
  min-height:0;
}
@media (max-width:767px){
  .team-busy-sections--compare{
    grid-template-columns:1fr;
  }
}
.team-busy-section-card{
  background:rgba(255,255,255,0.5);
  border-radius:12px;
  padding:20px;
  box-shadow:0 1px 3px rgba(0,0,0,0.05);
  display:flex;
  flex-direction:column;
  min-height:0;
}
/* Вкладка «Чем занята команда»: без отдельных карточек — только содержимое общего блока */
#contentTeamBusy{
  width:100%;
  min-width:0;
  /* Симметрично с отступом подписей табов — левый и правый край колонок на одной линии */
  padding-left:var(--tasks-tab-padding-x);
  padding-right:var(--tasks-tab-padding-x);
  box-sizing:border-box;
}
#contentTeamBusy .team-busy-section-card{
  background:transparent;
  box-shadow:none;
  border:none;
  border-radius:0;
  padding:0;
}
/* Больше воздуха между колонками «Мероприятия» | «Смены» | (карта в обычном режиме) */
#contentTeamBusy .team-busy-sections{
  column-gap:48px;
  row-gap:32px;
}
.team-busy-section{
  display:flex;
  flex-direction:column;
  gap:12px;
}
.team-busy-section__title{
  font-size:18px;
  font-weight:500;
  color:#141922;
  margin:0;
  padding:0;
  box-sizing:border-box;
}
.team-busy-section__content{
  display:flex;
  flex-direction:column;
  gap:8px;
}
.team-busy-item{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:8px;
  font-size:14px;
  line-height:1.5;
  color:#141922;
  padding:6px 0;
  border-bottom:1px solid rgba(0,0,0,0.05);
}
.team-busy-item:last-child{
  border-bottom:none;
}
.team-busy-item__text{
  flex:1;
}
.team-busy-item__text strong{
  font-weight:600;
}
.team-busy-empty{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  font-size:14px;
  color:rgba(0,0,0,0.5);
  font-style:italic;
  padding:4px 0;
}
.team-busy-empty span{
  flex:1;
}
.team-busy-add-btn,
.team-busy-edit-btn{
  background:transparent;
  border:none;
  padding:4px;
  cursor:pointer;
  color:#141922;
  opacity:0.5;
  transition:opacity 0.2s;
  display:flex;
  align-items:center;
  justify-content:center;
  flex-shrink:0;
}
.team-busy-add-btn:hover,
.team-busy-edit-btn:hover{
  opacity:1;
}
.team-busy-add-more{
  margin-top:4px;
  padding-top:4px;
  /* без border-top: линия уже у последнего .team-busy-item (border-bottom) */
  border-top:none;
}
.team-busy-add-more-btn{
  display:flex;
  align-items:center;
  justify-content:flex-start;
  gap:0;
  background:transparent;
  border:none;
  padding:6px 0;
  cursor:pointer;
  color:#141922;
  opacity:0.6;
  font-size:14px;
  transition:opacity 0.2s;
}
.team-busy-add-more-btn:hover{
  opacity:1;
}
.team-busy-add-more-btn svg{
  flex-shrink:0;
}

/* Блок "Карта занятости" */
.team-busy-occupancy__subtitle{
  font-size:13px;
  font-weight:500;
  color:rgba(41,50,65,0.7);
  margin:0 0 6px 0;
}
.team-busy-occupancy__bar-wrap{
  margin-bottom:16px;
}
.team-busy-occupancy__bar-wrap:last-child{
  margin-bottom:0;
}
.team-busy-occupancy__bar{
  height:10px;
  background:rgba(0,0,0,0.08);
  border-radius:4px;
  overflow:visible;
  position:relative;
}
.team-busy-occupancy__bar-fill{
  height:100%;
  background:#E46402;
  border-radius:4px;
  transition:width 0.2s ease;
  pointer-events:none;
}
.team-busy-occupancy__slider{
  position:absolute;
  left:0;
  top:50%;
  transform:translateY(-50%);
  width:100%;
  height:24px;
  margin:0;
  -webkit-appearance:none;
  appearance:none;
  background:transparent;
  border-radius:0;
  outline:none;
  cursor:pointer;
}
.team-busy-occupancy__slider::-webkit-slider-thumb{
  -webkit-appearance:none;
  width:16px;
  height:16px;
  border-radius:50%;
  background:#E46402;
  cursor:pointer;
  box-shadow:0 1px 3px rgba(0,0,0,0.2);
}
.team-busy-occupancy__slider::-moz-range-thumb{
  width:16px;
  height:16px;
  border-radius:50%;
  background:#E46402;
  cursor:pointer;
  border:none;
  box-shadow:0 1px 3px rgba(0,0,0,0.2);
}

/* Отдельный блок «Важно, но несрочно» (.tasks-alt) */
.tasks-section{
  background:transparent;
  border:1px solid rgba(0,0,0,0.1);
  border-radius:16px;
  padding:18px;
  margin:0;
  margin-bottom:24px;
  box-sizing:border-box;
  display:block;
}
.app > .tasks-section,
.app > .tasks-main-layout{
  margin-left:var(--hero-left-pad) !important;
  margin-right:40px !important;
  width:auto;
  max-width:100%;
  box-sizing:border-box;
}
/* Альтернативный вариант должен иметь те же внешние поля */
.app > .tasks-alt-layout{
  margin-left:var(--hero-left-pad) !important;
  margin-right:40px !important;
  width:auto;
  max-width:100%;
  box-sizing:border-box;
}
/* Двухколоночный layout: слева — одна карточка по ширине, справа — Саммари на всё остальное место */
.tasks-main-layout{
  display:flex;
  align-items:stretch;
  gap:0;
  min-height:320px;
  margin:0;
  margin-bottom:24px;
  box-sizing:border-box;
}

/* Альтернативный блок задач/саммари (второй вариант, рядом/ниже старого) */
.tasks-alt-layout{
  display:flex;
  align-items:stretch;
  gap:16px;
  min-height:320px;
  margin:0;
  margin-bottom:24px;
  box-sizing:border-box;
}
.tasks-alt-layout__left{
  flex:0 0 420px; /* шире левый блок */
  min-width:340px;
}
.tasks-alt{
  background:#ffffff;
  border:1px solid rgba(0,0,0,0.10);
  border-radius:16px;
  padding:22px 28px;
  box-sizing:border-box;
  height:100%;
  display:flex;
  flex-direction:column;
  min-height:0;
}
.tasks-alt__head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:14px;
}
.tasks-alt__title{
  margin:0;
  font-size:20px;
  font-weight:500;
  color:#141922;
}
.tasks-alt__list{
  display:flex;
  flex-direction:column;
  gap:0;
  min-height:0;
  overflow:auto;
  padding-right:6px;
}
.tasks-alt__item{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:10px 14px;
  margin:0;
  box-sizing:border-box;
  border-radius:0;
  border:none;
  border-bottom:1px solid rgba(0,0,0,0.10);
  background:transparent;
  cursor:pointer;
}
.tasks-alt__item:hover{
  border-bottom-color:rgba(0,0,0,0.18);
  background:rgba(0,0,0,0.02);
}
.tasks-alt__item.is-active{
  background:rgba(0,0,0,0.03);
}
.tasks-alt__item-title{
  font-size:15px;
  font-weight:600;
  color:rgba(51,54,63,0.82);
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.tasks-alt__item-meta{
  display:flex;
  align-items:center;
  gap:8px;
  flex:0 0 auto;
}
.tasks-alt__item-edit{
  width:28px;
  height:28px;
  border-radius:10px;
  border:none;
  background:transparent;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:0;
  color:rgba(0,0,0,0.4);
  cursor:pointer;
}
.tasks-alt__item-edit:hover{
  background:transparent;
  color:rgba(0,0,0,0.55);
}
.tasks-alt__item-edit svg{
  display:block;
}
.tasks-alt__item-delete{
  width:28px;
  height:28px;
  border-radius:10px;
  border:none;
  background:transparent;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:0;
  color:rgba(0,0,0,0.38);
  cursor:pointer;
}
.tasks-alt__item-delete:hover{
  background:transparent;
  color:rgba(211,47,47,0.75);
}
.tasks-alt__item-delete svg{
  display:block;
}
.tasks-alt__empty{
  color:rgba(0,0,0,0.45);
  font-style:italic;
  font-size:14px;
  padding:6px 14px;
  box-sizing:border-box;
}
.tasks-alt__add-first{
  flex-shrink:0;
  align-self:flex-start;
  margin-top:10px;
  padding:4px;
  border:none;
  background:transparent;
  cursor:pointer;
  color:rgba(20,25,34,0.38);
  border-radius:8px;
  line-height:0;
  transition:color 0.15s ease, background-color 0.15s ease;
}
.tasks-alt__add-first:hover{
  color:rgba(20,25,34,0.72);
  background:rgba(0,0,0,0.05);
}
.tasks-alt__add-first:focus-visible{
  outline:2px solid rgba(var(--block-border-rgb), 0.85);
  outline-offset:2px;
}
.tasks-alt__add-first-svg{
  display:block;
}

.tasks-alt-layout__right{
  flex:1;
  min-width:0;
  display:flex;
}
/* «Саммари»: эталонный блок — при экспериментах с цветами/фонами других карточек compare не переопределять. */
.tasks-alt-summary{
  flex:1;
  min-width:0;
  border-radius:16px;
  background:var(--bg-summary-gradient);
  border:1px solid var(--block-border-frosted);
  padding:22px 28px;
  box-sizing:border-box;
  display:flex;
  flex-direction:column;
  gap:14px;
}
.tasks-alt-summary__title{
  margin:0;
  font-size:20px;
  font-weight:500;
  color:#141922;
}
.tasks-alt-summary__top{
  display:flex;
  align-items:center;
  gap:12px;
}
.tasks-alt-summary__description{
  flex:1;
  min-width:0;
  min-height:42px;
  max-height:120px;
  border-radius:0;
  border:none;
  border-bottom:1px solid rgba(0,0,0,0.18);
  background:transparent;
  padding:9px 0 8px;
  margin:0;
  font:inherit;
  font-size:15px;
  line-height:1.4;
  color:rgba(20,25,34,0.85);
  outline:none;
  resize:none;
  overflow-y:auto;
  box-sizing:border-box;
}
.tasks-alt-summary__description::placeholder{
  color:rgba(20,25,34,0.45);
}
.tasks-alt-summary__description:disabled{
  opacity:0.65;
  cursor:default;
}
.tasks-alt-summary__description:not(:disabled){
  cursor:text;
}
.tasks-alt-summary__icons{
  display:flex;
  align-items:center;
  gap:10px;
}
.tasks-alt-summary__icon{
  position:relative;
  width:42px;
  height:42px;
  padding:0;
  border:none;
  border-radius:12px;
  background:transparent;
  color:rgba(0,0,0,0.55);
  display:flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  box-shadow:none;
  -webkit-appearance:none;
  appearance:none;
  outline:none;
}
.tasks-alt-summary__icon:hover:not(:disabled){
  background:rgba(255,255,255,0.18);
}
.tasks-alt-summary__icon:focus-visible{
  box-shadow:0 0 0 2px rgba(0,0,0,0.12);
}
.tasks-alt-summary__icon:disabled{
  opacity:0.55;
  cursor:default;
}
/* Обводка и скругление как у инициалов в .priority-task-card__avatar */
.tasks-alt-summary__avatar{
  width:28px;
  height:28px;
  min-width:28px;
  min-height:28px;
  max-width:100%;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:12px;
  font-weight:600;
  letter-spacing:0.02em;
  color:rgba(20,25,34,0.75);
  background:transparent;
  border:1px solid rgba(0,0,0,0.07);
  border-radius:6px;
  line-height:1;
  padding:0;
  box-sizing:border-box;
  overflow:hidden;
}
.tasks-alt-summary__body{
  flex:1;
  min-height:0;
  border-radius:14px;
  border:1px solid rgba(0,0,0,0.08);
  background:rgba(255,255,255,0.35);
  padding:14px;
  overflow:auto;
  white-space:pre-wrap;
  color:rgba(20,25,34,0.85);
  line-height:1.4;
}
.tasks-alt-summary__placeholder{
  color:rgba(20,25,34,0.55);
  font-style:italic;
}
.tasks-alt-summary__body:has(.tasks-alt-summary__placeholder){
  border:none;
}

@media (max-width: 1024px){
  .tasks-alt-layout{
    flex-direction:column;
  }
  .tasks-alt-layout__left{
    flex:0 0 auto;
    width:100%;
  }
}
.tasks-main-layout__left{
  flex:0 0 auto;
  width:576px;
}
.tasks-main-layout__left .tasks-section{
  border-radius:16px;
  margin-bottom:0;
}
.tasks-main-layout__left .tasks-section__cards{
  grid-template-columns:1fr;
}
.tasks-main-layout__divider{
  flex:0 0 1px;
  width:1px;
  background:rgba(0,0,0,0.12);
  min-height:200px;
  border-radius:999px;
  margin:12px 12px;
}
.tasks-main-layout__right{
  flex:1;
  min-width:0;
  display:flex;
  flex-direction:column;
}
.task-summary-panel{
  display:flex;
  flex-direction:column;
  flex:1;
  min-height:0;
  padding:18px;
  background:#ffffff;
  border-radius:16px;
  border:1px solid rgba(0,0,0,0.08);
  border-left:none;
  box-sizing:border-box;
}
.task-summary-panel__title{
  font-size:18px;
  font-weight:500;
  color:#141922;
  margin:0 0 16px 0;
}
.task-summary-panel__content{
  flex:1;
  font-size:14px;
  line-height:1.5;
  color:#141922;
  white-space:pre-wrap;
  word-wrap:break-word;
}
.task-summary-panel__placeholder{
  color:rgba(41,50,65,0.5);
  font-style:italic;
  margin:0;
}
.task-summary-panel__task-title{
  font-weight:600;
  margin:0 0 12px 0;
  padding-bottom:8px;
  border-bottom:1px solid rgba(0,0,0,0.08);
}
.task-summary-panel__lines{
  margin:0;
}
@media (max-width: 1024px) {
  .tasks-main-layout{
    flex-direction:column;
  }
  .tasks-main-layout__left{
    width:100%;
  }
  .tasks-main-layout__left .tasks-section__cards{
    grid-template-columns:repeat(2, 1fr);
  }
  .tasks-main-layout__divider{
    width:100%;
    height:1px;
    min-height:0;
  }
  .tasks-main-layout__right{
    flex:1 1 auto;
  }
  .task-summary-panel{
    border-radius:16px;
    border-left:1px solid rgba(0,0,0,0.08);
  }
}
@media (max-width: 768px) {
  .tasks-main-layout__left .tasks-section__cards{
    grid-template-columns:1fr;
  }
}
/* Выделенная карточка задачи */
.task-card.task-card--selected{
  border-color:#E46402;
  box-shadow:0 0 0 2px rgba(171,59,97,0.2);
}
.task-card.task-card--selected:hover{
  border-color:#E46402;
  box-shadow:0 0 0 2px rgba(171,59,97,0.25);
}
.tasks-section__header{
  display:flex;
  justify-content:space-between;
  align-items:center;
  margin-bottom:20px;
}
.tasks-section__title{
  font-size:20px;
  font-weight:500;
  color:#141922;
  margin:0;
}
.tasks-section__cards{
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  gap:24px;
}
@media (max-width: 1200px) {
  .tasks-section__cards {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 768px) {
  .tasks-section__cards {
    grid-template-columns: 1fr;
  }
}
.tasks-board__header{
  display:flex;
  justify-content:space-between;
  align-items:center;
  margin-bottom:20px;
}
.tasks-board__title{
  font-size:20px;
  font-weight:500;
  color:#141922;
  margin:0;
}
.tasks-board__cards{
  display:grid;
  grid-template-columns:repeat(auto-fill, minmax(280px, 1fr));
  gap:16px;
}
.task-card{
  background:#ffffff;
  border:1px solid var(--block-border-divider);
  border-radius:16px;
  padding:16px;
  position:relative;
  min-height:0;
  max-height:300px;
  overflow:hidden;
  display:flex;
  flex-direction:column;
  gap:8px;
  box-sizing:border-box;
  width:100%;
  transition:max-height 0.3s ease;
}
.task-card:hover{
  border-color:var(--block-border-panel);
  box-shadow:0 2px 8px rgba(0,0,0,0.04);
}
.task-card.task-card--burning{
  border:2px solid #ff4444;
  border-radius:16px;
}
.task-card.task-card--burning .task-card__header{
  background:rgba(255,68,68,0.05);
  border-radius:8px;
  padding:8px 12px;
  margin:-16px -16px 0 -16px;
}
.task-card__header{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:8px;
  width:100%;
  box-sizing:border-box;
}
.task-card__header-actions{
  display:flex;
  align-items:center;
  gap:8px;
  flex-shrink:0;
  padding-top:2px;
}
.task-card__action-btn{
  width:24px;
  height:24px;
  padding:0;
  border:none;
  background:transparent;
  color:rgba(41,50,65,0.4);
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:4px;
  transition:all 0.2s;
  flex-shrink:0;
  box-shadow:none;
  outline:none;
}
.task-card__action-btn:hover{
  background:rgba(0,0,0,0.05);
  color:rgba(41,50,65,0.7);
  box-shadow:none;
}
.task-card__action-btn svg{
  width:16px;
  height:16px;
  filter:none;
  stroke-width:1;
}
.task-card__delete-btn:hover{
  background:rgba(255,68,68,0.1);
  color:#ff4444;
  box-shadow:none;
}
.task-card__edit-btn:hover{
  background:rgba(171,59,97,0.1);
  color:#E46402;
  box-shadow:none;
}
.task-card__title{
  font-size:18px;
  font-weight:500;
  color:#141922;
  margin:0;
  line-height:1.4;
  flex:1;
}
.task-card__title-input{
  font-size:18px;
  font-weight:500;
  color:#141922;
  margin:0;
  line-height:1.4;
  border:none;
  background:transparent;
  padding:0;
  outline:none;
  width:100%;
  font-family:inherit;
  box-sizing:border-box;
  flex:1;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.task-card__title-input:focus{
  background:rgba(0,0,0,0.02);
  border-radius:4px;
  padding:4px 8px;
  margin:-4px -8px;
  white-space:normal;
  overflow:auto;
}
.task-card__description-input{
  background:#e3f2fd;
  border-radius:8px;
  padding:8px 12px;
  font-size:14px;
  color:#141922;
  line-height:1.5;
  white-space:pre-wrap;
  word-wrap:break-word;
  overflow:hidden;
  border:2px solid transparent;
  outline:none;
  resize:none;
  font-family:inherit;
  width:100%;
  box-sizing:border-box;
  min-height:60px;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  text-overflow:ellipsis;
}
.task-card__description-input:focus{
  display:block;
  -webkit-line-clamp:unset;
  overflow:auto;
  max-height:calc(1.5em * 4 + 24px);
}
.task-card__description-input:focus{
  border-color:#E46402;
  background:#fff;
}
.task-card__speaker-input-edit{
  width:100%;
  background:#e3f2fd;
  border-radius:8px;
  padding:8px 12px;
  font-size:14px;
  color:#141922;
  border:2px solid transparent;
  outline:none;
  font-family:inherit;
  box-sizing:border-box;
}
.task-card__speaker-input-edit:focus{
  border-color:#E46402;
  background:#fff;
}
.task-card__factura-input-edit{
  width:100%;
  background:#fff;
  border:1px solid rgba(0,0,0,0.1);
  border-radius:8px;
  padding:8px 12px;
  font-size:14px;
  color:#141922;
  outline:none;
  resize:none;
  font-family:inherit;
  box-sizing:border-box;
  min-height:60px;
  line-height:1.5;
  white-space:pre-wrap;
  word-wrap:break-word;
  overflow:auto;
}
.task-card__factura-input-edit:focus{
  border-color:#E46402;
  background:#fff;
  box-shadow:0 0 0 3px rgba(171,59,97,0.1);
}
.task-card__status-indicator{
  width:12px;
  height:12px;
  border-radius:50%;
  background:rgba(0,0,0,0.1);
  border:none;
  cursor:pointer;
  flex-shrink:0;
  transition:all 0.2s;
  padding:0;
}
.task-card__status-indicator:hover{
  transform:scale(1.2);
}
.task-card__status-indicator--burning{
  background:#ff4444;
  box-shadow:0 0 8px rgba(255,68,68,0.4);
}
.task-card__description-block,
.task-card__speakers-block,
.task-card__summary-block{
  display:flex;
  flex-direction:column;
  gap:8px;
  width:100%;
  box-sizing:border-box;
}
.task-card__description-label,
.task-card__speakers-label,
.task-card__summary-label{
  font-size:12px;
  font-weight:500;
  color:rgba(41,50,65,0.5);
  text-transform:uppercase;
  letter-spacing:0.5px;
  width:100%;
  box-sizing:border-box;
}
.task-card__speakers-add-btn{
  margin-top:4px;
  padding:6px 12px;
  background:transparent;
  border:1px dashed rgba(0,0,0,0.2);
  border-radius:6px;
  font-size:13px;
  color:rgba(41,50,65,0.6);
  cursor:pointer;
  transition:all 0.2s;
  display:inline-flex;
  align-items:center;
  gap:6px;
  width:fit-content;
}
.task-card__speakers-add-btn:hover{
  border-color:#E46402;
  color:#E46402;
  background:rgba(171,59,97,0.05);
}
.task-card__speakers-add-btn svg{
  width:14px;
  height:14px;
}
.task-card__description{
  background:#e3f2fd;
  border-radius:12px;
  padding:16px;
  font-size:14px;
  color:#141922;
  line-height:1.6;
  white-space:pre-wrap;
  word-wrap:break-word;
  overflow:visible;
}
.task-card__speaker-block{
  display:flex;
  flex-direction:column;
  gap:8px;
  margin-bottom:8px;
  width:100%;
  box-sizing:border-box;
}
.task-card__speaker-block:last-child{
  margin-bottom:0;
}
.task-card__speaker-header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  width:100%;
  box-sizing:border-box;
}
.task-card__drag-handle{
  flex:0 0 auto;
  width:34px;
  height:34px;
  border-radius:10px;
  border:1px solid rgba(0,0,0,0.08);
  background:rgba(255,255,255,0.75);
  color:rgba(20,25,34,0.45);
  display:flex;
  align-items:center;
  justify-content:center;
  cursor:grab;
  box-sizing:border-box;
}
.task-card__drag-handle:active{
  cursor:grabbing;
}
.task-card__drag-handle:hover{
  color:rgba(20,25,34,0.62);
  border-color:rgba(41,163,177,0.25);
}
.task-card__drag-handle svg{ width:16px; height:16px; }
.task-card__speaker-header .task-card__speaker-input-edit{
  flex:1;
  background:#e3f2fd;
  border-radius:8px;
  padding:8px 12px;
  font-size:14px;
  color:#141922;
  border:2px solid transparent;
  outline:none;
  font-family:inherit;
  box-sizing:border-box;
}
.task-card__speaker-header .task-card__speaker-input-edit:focus{
  border-color:#E46402;
  background:#fff;
}
.task-card__factura-preview-wrapper{
  width:100%;
  box-sizing:border-box;
}
.task-card__factura-preview-wrapper{
  position:relative;
  width:100%;
  box-sizing:border-box;
}
.task-card__factura-preview-wrapper .task-card__factura-input-edit{
  width:100%;
  background:#fff;
  border:1px solid rgba(0,0,0,0.1);
  border-radius:8px;
  padding:8px 12px;
  font-size:14px;
  color:#141922;
  outline:none;
  resize:none;
  font-family:inherit;
  box-sizing:border-box;
  min-height:36px;
  max-height:36px;
  overflow:hidden;
  line-height:1.5;
  text-overflow:ellipsis;
  white-space:nowrap;
  display:block;
}
.task-card__factura-preview-wrapper .task-card__factura-input-edit:focus{
  border-color:#E46402;
  background:#fff;
  box-shadow:0 0 0 3px rgba(171,59,97,0.1);
  white-space:normal;
  overflow:auto;
  max-height:calc(1.5em * 3 + 24px);
  text-overflow:clip;
}
.task-card__speakers-block{
  display:flex;
  flex-direction:column;
  gap:8px;
  width:100%;
  box-sizing:border-box;
}
.task-card__speakers-block--collapsed .task-card__speaker-block:not(:first-child){
  display:none;
}
.task-card__speaker-field-wrapper,
.task-card__factura-field-wrapper{
  display:flex;
  flex-direction:column;
  gap:4px;
  width:100%;
  box-sizing:border-box;
}
.task-card__field-label{
  font-size:11px;
  font-weight:500;
  color:rgba(41,50,65,0.5);
  text-transform:uppercase;
  letter-spacing:0.5px;
  margin-bottom:2px;
  width:100%;
  box-sizing:border-box;
}
.task-card__speaker-input{
  flex:0 0 180px;
  background:#e3f2fd;
  border-radius:8px;
  padding:8px 12px;
  font-size:14px;
  color:#141922;
  min-height:36px;
  display:flex;
  align-items:center;
  word-wrap:break-word;
  line-height:1.5;
  box-sizing:border-box;
}
.task-card__factura-text{
  flex:1;
  background:#fff;
  border:1px solid rgba(0,0,0,0.1);
  border-radius:8px;
  padding:8px 12px;
  font-size:14px;
  color:#141922;
  min-height:36px;
  height:36px;
  overflow:hidden;
  word-wrap:break-word;
  white-space:nowrap;
  text-overflow:ellipsis;
  line-height:1.5;
  box-sizing:border-box;
  display:flex;
  align-items:center;
  position:relative;
}
.task-card__factura-preview{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  flex:1;
}
.task-card__factura-expand-icon{
  margin-left:4px;
  color:rgba(41,50,65,0.4);
  font-size:16px;
  line-height:1;
  flex-shrink:0;
}
.task-card__placeholder{
  color:rgba(41,50,65,0.4);
  font-style:italic;
}
.task-card__speaker-responsible{
  width:24px;
  height:24px;
  display:flex;
  align-items:center;
  justify-content:center;
  flex-shrink:0;
  position:relative;
  cursor:pointer;
  align-self:flex-start;
  margin-top:4px;
}
.task-card__speaker-responsible svg{
  width:20px;
  height:20px;
}
/* Иконка когда ответственный назначен - цветная */
.task-card__speaker-responsible--assigned svg{
  color:#AB3B61;
}
/* Иконка когда ответственный не назначен - бледно-серая */
.task-card__speaker-responsible--empty svg{
  color:rgba(41,50,65,0.3);
}
/* Скрепка: открывает окно фактуры; зелёная, когда фактура заполнена */
.task-card__factura-btn{
  width:24px;
  height:24px;
  padding:0;
  border:none;
  background:transparent;
  color:rgba(41,50,65,0.35);
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:center;
  flex-shrink:0;
  border-radius:4px;
  transition:color 0.2s;
}
.task-card__factura-btn:hover{
  color:rgba(41,50,65,0.6);
}
.task-card__factura-btn svg{
  width:18px;
  height:18px;
}
.task-card__factura-btn--filled{
  color:#2e7d32;
}
.task-card__factura-btn--filled:hover{
  color:#1b5e20;
}
/* Тултип только один - нативный через title, убираем CSS тултипы */
.task-card__summary{
  background:#e8f5e9;
  border-radius:8px;
  padding:8px 12px;
  font-size:14px;
  color:#141922;
  line-height:1.5;
  overflow:hidden;
  position:relative;
  width:100%;
  box-sizing:border-box;
}
.task-card__summary--expanded{
  max-height:none;
  overflow:auto;
}
.task-card__summary--expanded .task-card__summary-preview{
  display:block;
  -webkit-line-clamp:unset;
  overflow:visible;
}
.task-card__summary-preview{
  overflow:hidden;
  text-overflow:ellipsis;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  white-space:pre-wrap;
  word-wrap:break-word;
}
.task-card__summary--expanded .task-card__summary-preview{
  -webkit-line-clamp:unset;
  display:block;
}
.task-card__summary-expand-icon{
  position:absolute;
  bottom:8px;
  right:12px;
  color:rgba(41,50,65,0.4);
  font-size:16px;
  line-height:1;
  background:#e8f5e9;
  padding:0 4px;
}
.task-card__summary--expanded .task-card__summary-expand-icon{
  display:none;
}
.task-card__summary-empty{
  color:rgba(41,50,65,0.5);
  font-style:italic;
}
.task-card__summary-item{
  margin-bottom:8px;
}
.task-card__summary-item:last-child{
  margin-bottom:0;
}
.task-card.task-card--expanded{
  max-height:none;
  overflow:visible;
}
.task-card__expand-btn{
  margin-top:8px;
  padding:6px 12px;
  background:transparent;
  border:1px dashed rgba(0,0,0,0.2);
  border-radius:6px;
  font-size:12px;
  color:rgba(41,50,65,0.6);
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  transition:all 0.2s ease;
  width:100%;
  box-sizing:border-box;
}
.task-card__expand-btn:hover{
  border-color:#E46402;
  color:#E46402;
  background:rgba(171,59,97,0.05);
}
.task-card__expand-btn svg{
  width:14px;
  height:14px;
  transition:transform 0.2s ease;
}
.task-card.task-card--expanded .task-card__expand-btn svg{
  transform:rotate(180deg);
}
.task-card__speakers-block{
  position:relative;
}
.task-card__speakers-block--collapsed{
  overflow:hidden;
}
.empty-tasks{
  text-align:center;
  padding:40px 20px;
  color:rgba(41,50,65,0.5);
}
.empty-tasks p{
  margin:0 0 16px 0;
  font-size:16px;
}

/* Стили для формы спикеров/фактуры */
.speaker-factura-rows{
  display:flex;
  flex-direction:column;
  gap:10px;
}
.speaker-factura-row{
  display:flex;
  flex-wrap:wrap;
  align-items:flex-start;
  gap:10px 12px;
  position:relative;
}
.speaker-factura-row__stack{
  flex:1 1 260px;
  min-width:0;
  display:flex;
  flex-direction:column;
  gap:8px;
}
.speaker-factura-row__stack .speaker-input,
.speaker-factura-row__stack .factura-textarea{
  width:100%;
  max-width:none;
}
.speaker-factura-row__aside{
  flex:0 1 240px;
  display:flex;
  flex-direction:row;
  align-items:flex-start;
  gap:8px;
  min-width: min(100%, 200px);
}
.speaker-factura-row__aside .speaker-row-remove-btn{
  margin-top:6px;
}
.speaker-row-remove-btn{
  width:24px;
  height:24px;
  padding:0;
  border:none;
  background:transparent;
  color:rgba(41,50,65,0.4);
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:center;
  flex-shrink:0;
  border-radius:4px;
  transition:all 0.2s;
  margin-top:0;
}
.speaker-row-remove-btn:hover{
  background:rgba(255,68,68,0.1);
  color:#ff4444;
}
.speaker-row-remove-btn svg{
  width:14px;
  height:14px;
}
.speaker-factura-add-btn{
  margin-top:8px;
  padding:8px 12px;
  background:transparent;
  border:1px dashed rgba(0,0,0,0.2);
  border-radius:6px;
  font-size:13px;
  color:rgba(41,50,65,0.6);
  cursor:pointer;
  transition:all 0.2s;
  display:inline-flex;
  align-items:center;
  gap:6px;
  width:fit-content;
}
.speaker-factura-add-btn:hover{
  border-color:#E46402;
  color:#E46402;
  background:rgba(171,59,97,0.05);
}
.speaker-factura-add-btn svg{
  width:14px;
  height:14px;
}
.speaker-input{
  flex:0 1 180px;
  padding:8px 12px;
  border:1px solid rgba(0,0,0,0.1);
  border-radius:8px;
  font-size:14px;
  background:#e3f2fd;
  color:#141922;
  font-family:inherit;
  min-height:38px;
  box-sizing:border-box;
}
.speaker-factura-row__stack .speaker-input{
  flex:none;
}
.speaker-input:focus{
  outline:none;
  border-color:#E46402;
  box-shadow:0 0 0 3px rgba(171,59,97,0.1);
}
.factura-textarea{
  flex:1;
  padding:8px 12px;
  border:1px solid rgba(0,0,0,0.1);
  border-radius:8px;
  font-size:14px;
  background:#fff;
  color:#141922;
  font-family:inherit;
  resize:vertical;
  overflow-y:auto;
  min-height:calc(1.5em * 2 + 16px);
  max-height:calc(1.5em * 6 + 16px);
  line-height:1.5;
  box-sizing:border-box;
}
.speaker-factura-row__stack .factura-textarea{
  flex:none;
  min-height:calc(1.5em * 2 + 16px);
}
.factura-textarea:focus{
  outline:none;
  border-color:#E46402;
  box-shadow:0 0 0 3px rgba(171,59,97,0.1);
}
.speaker-responsible-select{
  flex:0 1 180px;
  padding:8px 12px;
  border:1px solid rgba(0,0,0,0.1);
  border-radius:8px;
  font-size:14px;
  background:#fff;
  color:#141922;
  font-family:inherit;
  min-height:38px;
  box-sizing:border-box;
  cursor:pointer;
}
.speaker-factura-row__aside .speaker-responsible-select{
  flex:1 1 auto;
  min-width:140px;
  max-width:100%;
}
.speaker-responsible-select:focus{
  outline:none;
  border-color:#E46402;
  box-shadow:0 0 0 3px rgba(171,59,97,0.1);
}
.speaker-row-responsible{
  width:32px;
  height:32px;
  display:flex;
  align-items:center;
  justify-content:center;
  flex-shrink:0;
  margin-top:2px;
}
.speaker-row-responsible-icon{
  width:32px;
  height:32px;
  border-radius:50%;
  background:rgba(0,0,0,0.05);
  display:flex;
  align-items:center;
  justify-content:center;
}
.speaker-row-responsible-icon svg{
  width:18px;
  height:18px;
  color:rgba(41,50,65,0.6);
}

/* Модальное окно */
.modal{
  display:none;
  position:fixed;
  top:0;
  left:0;
  right:0;
  bottom:0;
  background:rgba(0,0,0,0.5);
  z-index:1000;
  align-items:center;
  justify-content:center;
  padding:20px;
}
.modal-content{
  background:#ffffff;
  border-radius:16px;
  max-width:500px;
  width:100%;
  max-height:90vh;
  overflow-y:auto;
  box-shadow:0 10px 40px rgba(0,0,0,0.2);
}
.modal-header{
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding:20px;
  border-bottom:1px solid rgba(0,0,0,0.1);
}
.modal-header h3{
  margin:0;
  font-size:20px;
  font-weight:500;
  color:#141922;
}
.modal-body{
  padding:20px;
}
.modal-footer{
  display:flex;
  justify-content:flex-end;
  gap:12px;
  padding:20px;
  border-top:1px solid rgba(0,0,0,0.1);
}
.form-group{
  margin-bottom:20px;
}
.form-group label{
  display:block;
  margin-bottom:8px;
  font-size:14px;
  font-weight:500;
  color:#141922;
}
.form-group input,
.form-group textarea,
.form-group select{
  width:100%;
  padding:10px 12px;
  border:1px solid rgba(0,0,0,0.15);
  border-radius:8px;
  font-size:14px;
  font-family:inherit;
  box-sizing:border-box;
}
.form-group input:focus,
.form-group textarea:focus,
.form-group select:focus{
  outline:none;
  border-color:#E46402;
}
.form-group textarea{
  resize:vertical;
  min-height:80px;
}
.btn-primary{
  padding:10px 20px;
  background:#E46402;
  color:white;
  border:none;
  border-radius:8px;
  font-size:14px;
  font-weight:500;
  cursor:pointer;
  transition:all 0.2s;
}
.btn-primary:hover{
  background:#8a2f4d;
  transform:translateY(-1px);
}
.btn-secondary{
  padding:10px 20px;
  background:#ffffff;
  color:#141922;
  border:1px solid rgba(0,0,0,0.15);
  border-radius:8px;
  font-size:14px;
  font-weight:500;
  cursor:pointer;
  transition:all 0.2s;
}
.btn-secondary:hover{
  background:rgba(0,0,0,0.05);
  border-color:rgba(0,0,0,0.2);
}

/*
 * ===== Пробный макет дашборда (URL: /<slug>/layout-compare) =====
 * Структура сверху вниз:
 *   .layout-compare-banner     — полоска «Пробный макет…» + ссылка назад
 *   .now-block-wrap--compare   — обёртка: шапка проекта + сетка карточек
 *     .now-block-compare__header — название, время/дата, аватары справа
 *     .now-block-compare__grid   — две колонки (≥901px): «Важно» слева, табы справа на ту же высоту
 *
 * Отступ ОТ БЛОКА С ДАТОЙ/ВРЕМЕНЕМ ДО НИЖНЕЙ СЕТКИ (карточки «Важно» + диаграмма):
 *   1) Увеличьте gap у .now-block-wrap--compare (зазор между шапкой и сеткой).
 *   2) Или добавьте/увеличьте margin-bottom у .now-block-compare__header
 *      (дополнительный отступ под всей шапкой; суммируется с gap).
 * Зазор только между заголовком и строкой времени — margin у .now-block-compare__datetime.
 *
 * Высота «Важно» (≥901px): --compare-mid-max-px (≈90% от 620px) — фикс. высота карточки и табов справа.
 * Цвета: правьте # и rgba прямо в правилах ниже (баннер → .layout-compare-banner__text,
 * шапка → .now-block-compare__title / __datetime, карточки → .now-block-compare__card*,
 * «Важно» → .compare-important*, плейсхолдеры → __card--placeholder, __widget-slot).
 * Табы и задачи ниже страницы используют общие классы .tasks-board*, .task-card* — см. выше в файле.
 */
/* compare: section — выше специфичность, чем у section.app (иначе padding боков 0 из shorthand перебивает один класс) */
section.app.app--layout-compare-wrap{
  max-width:none;
  width:100%;
  margin:0;
  box-sizing:border-box;
  padding-top:48px !important;
  padding-bottom:48px !important;
  padding-left:var(--hero-left-pad) !important;
  padding-right:var(--hero-left-pad) !important;
}
/* Рейл + compare: левый зазор чуть меньше стандартного hero-left-pad (таблетка/mobile сохраняют адекватный минимум) */
body.has-app-nav-rail section.app.app--layout-compare-wrap{
  padding-left:max(16px, calc(var(--hero-left-pad) - 16px)) !important;
}

/* Остальные блоки compare — как поверхность .priority-task-card (не трогаем .priority-tasks и .tasks-alt-summary) */
.app--layout-compare-wrap .now-block-wrap--compare .now-block-compare__card,
.app--layout-compare-wrap .now-block-wrap--compare .now-block-compare__card--important,
.app--layout-compare-wrap .now-block-wrap--compare .now-block-compare__card--tabs{
  background:var(--priority-task-card-surface-bg);
  border:var(--priority-task-card-surface-border);
  border-radius:var(--priority-task-card-surface-radius);
  box-shadow:none;
}
.app--layout-compare-wrap .now-block-compare__card--tabs .tasks-board{
  background:transparent !important;
}
/* «Важно, но несрочно»: тот же фон и контур, что у «Саммари» (.tasks-alt-summary) */
.app--layout-compare-wrap .tasks-alt-layout__left .tasks-alt{
  background:var(--bg-summary-gradient);
  border:1px solid var(--block-border-frosted);
  border-radius:16px;
  box-shadow:none;
}
.app--layout-compare-wrap .app-grid.app-grid--compare-contacts .sidebar{
  background:var(--priority-task-card-surface-bg);
  border:var(--priority-task-card-surface-border);
  border-radius:var(--priority-task-card-surface-radius);
  box-shadow:none;
}
.app--layout-compare-wrap .app-grid.app-grid--compare-contacts .panel{
  background:var(--priority-task-card-surface-bg);
  border:var(--priority-task-card-surface-border);
  border-radius:var(--priority-task-card-surface-radius);
  box-shadow:none;
}

/* Нижний блок (.wrap.app-grid): без min-width:0 колонка с таблицей раздувается по min-content и таблица «вылезает» за экран без скролла в .table-card */
.app--layout-compare-wrap .wrap.app-grid{
  min-width:0;
  max-width:100%;
  box-sizing:border-box;
}
.app--layout-compare-wrap .app-grid > .panel{
  min-width:0;
  box-sizing:border-box;
}

/* Одна сетка по ширине: поля только у section (hero-left-pad), без доп. margin-right — иначе Саммари/таблица короче красной линии */
section.app.app--layout-compare-wrap > .tasks-alt-layout{
  margin-left:0 !important;
  margin-right:0 !important;
  width:100%;
  max-width:100%;
  box-sizing:border-box;
}
/* Правая колонка «Саммари» на всю оставшуюся ширину — без этого край мог не совпадать с блоками выше */
section.app.app--layout-compare-wrap > .tasks-alt-layout .tasks-alt-layout__right{
  flex:1 1 0%;
  min-width:0;
  align-self:stretch;
}
section.app.app--layout-compare-wrap > .tasks-alt-layout .tasks-alt-summary{
  flex:1 1 auto;
  width:100%;
  min-width:0;
  align-self:stretch;
}
/* Страница /<slug>/hub: те же правила для блоков внутри обёртки */
.workspace-tasks-hub-inner{
  display:flex;
  flex-direction:column;
  gap:22px;
  min-width:0;
}
/* Один вертикальный шаг между блоками: только gap у .workspace-tasks-hub-inner, без доп. margin-bottom у .tasks-alt-layout */
section.app.app--layout-compare-wrap .workspace-tasks-hub-inner > .tasks-alt-layout{
  margin-left:0 !important;
  margin-right:0 !important;
  margin-bottom:0 !important;
  width:100%;
  max-width:100%;
  box-sizing:border-box;
}

/* /hub: скрыть два блока (Важно, но несрочно + Саммари), не удаляя из DOM */
section.app.app--layout-compare-wrap.workspace-tasks-hub-wrap .workspace-tasks-hub-inner > .tasks-alt-layout{
  display:none !important;
}
/* Совпадает с gap у .workspace-tasks-hub-inner — не 16px как у полного now-block */
section.app.app--layout-compare-wrap.workspace-tasks-hub-wrap > .now-block-wrap--compare.now-block-wrap--header-only{
  margin-bottom:22px !important;
}
/* Две равные колонки (~до середины экрана у каждой) */
section.app.app--layout-compare-wrap .workspace-tasks-hub-inner > .tasks-alt-layout .tasks-alt-layout__left{
  flex:1 1 0%;
  min-width:0;
  align-self:stretch;
}
section.app.app--layout-compare-wrap .workspace-tasks-hub-inner > .tasks-alt-layout .tasks-alt-layout__right{
  flex:1 1 0%;
  min-width:0;
  align-self:stretch;
}
section.app.app--layout-compare-wrap .workspace-tasks-hub-inner > .tasks-alt-layout .tasks-alt-summary{
  flex:1 1 auto;
  width:100%;
  min-width:0;
  align-self:stretch;
}
/* Две колонки: навигация | таблица (таблица не уезжает под сайдбар) */
section.app.app--layout-compare-wrap > .app-grid.app-grid--compare-contacts{
  grid-template-columns:minmax(0, 240px) minmax(0, 1fr);
  align-items:start;
  gap:24px;
  margin-left:0 !important;
  margin-right:0 !important;
  width:100%;
  max-width:100%;
  box-sizing:border-box;
}
.app--layout-compare-wrap .app-grid.app-grid--compare-contacts .sidebar{
  min-width:0;
  width:100%;
  justify-self:stretch;
  box-sizing:border-box;
}
.app--layout-compare-wrap .app-grid.app-grid--compare-contacts .panel{
  width:100%;
  /* Явные поля: базовый .panel мог «теряться» визуально из‑за широкой таблицы/скролла */
  padding:22px 24px !important;
}
#contacts-table-anchor{
  scroll-margin-top:24px;
}
#employee-database-anchor{
  scroll-margin-top:24px;
}
/* Блок «База контактов» на всю ширину над сайдбаром + SPA-панелью */
section.app.app--layout-compare-wrap > .contact-database-compare-wrap{
  margin-left:0 !important;
  margin-right:0 !important;
  width:100%;
  max-width:100%;
  box-sizing:border-box;
  margin-bottom:24px;
  background:var(--priority-task-card-surface-bg);
  border:var(--priority-task-card-surface-border);
  border-radius:var(--priority-task-card-surface-radius);
  padding:22px 24px;
  box-shadow:none;
  min-width:0;
}
.workspace-tasks-hub-inner > .contact-database-compare-wrap{
  margin-left:0 !important;
  margin-right:0 !important;
  width:100%;
  max-width:100%;
  box-sizing:border-box;
  background:var(--priority-task-card-surface-bg);
  border:var(--priority-task-card-surface-border);
  border-radius:var(--priority-task-card-surface-radius);
  padding:22px 24px;
  box-shadow:none;
  min-width:0;
}
.app--layout-compare-wrap .contact-database-compare-wrap .flash-messages{
  position:relative;
  margin-bottom:12px;
}
.tasks-board--contact-database{
  background:transparent !important;
}
/* Внутри карточки compare-wrap не дублируем обводку/поля общего .tasks-board */
.app--layout-compare-wrap .contact-database-compare-wrap .tasks-board.tasks-board--contact-database{
  padding:0;
  margin:0;
  border:none;
  border-radius:0;
  box-shadow:none;
}
/* Меньше воздуха между табами и тулбаром поиска (общий .tasks-board__tabs даёт ~28px снизу) */
.tasks-board--contact-database .tasks-board__tabs{
  margin-bottom:6px;
}
.tasks-board--contact-database .tasks-board__content{
  min-height:0;
}
/* /<slug>/hub — темы/предложения: меньше воздуха между вкладками, тулбаром и таблицей */
#workspaceHubThemesBoard.tasks-board--contact-database{
  --tasks-tab-strip:12px;
  --tasks-tab-padding-y:8px;
}
#workspaceHubThemesBoard.tasks-board--contact-database .tasks-board__tabs{
  margin-bottom:0;
}
#workspaceHubThemesBoard.tasks-board--contact-database .tasks-board__tab-inner{
  row-gap:4px;
}
#workspaceHubThemesBoard .tasks-board__content{
  min-height:0;
}
.app--layout-compare-wrap #workspaceHubThemesBoard .table-card{
  margin-top:0;
  overflow-x:hidden;
}
/* Только активная вкладка: иначе #id перебивает .tasks-board__panel{display:none} и видны обе таблицы */
#workspaceHubThemesBoard .tasks-board__panel.hub-themes-panel.active{
  display:flex;
  flex-direction:column;
  align-items:stretch;
  min-height:0;
  gap:0;
}
#workspaceHubThemesBoard .hub-themes-panel__scroll{
  flex:1 1 auto;
  min-height:0;
  min-width:0;
}
#workspaceHubThemesBoard .hub-themes-add-ghost{
  flex-shrink:0;
  align-self:flex-start;
  margin-top:10px;
  padding:4px;
  border:none;
  background:transparent;
  cursor:pointer;
  color:rgba(20,25,34,0.38);
  border-radius:8px;
  line-height:0;
  transition:color 0.15s ease, background-color 0.15s ease;
}
#workspaceHubThemesBoard .hub-themes-add-ghost:hover{
  color:rgba(20,25,34,0.72);
  background:rgba(0,0,0,0.05);
}
#workspaceHubThemesBoard .hub-themes-add-ghost:focus-visible{
  outline:2px solid rgba(var(--block-border-rgb), 0.85);
  outline-offset:2px;
}
#workspaceHubThemesBoard .hub-themes-add-ghost__svg{
  display:block;
}
/* Таблица «Темы в работе» на hub: table-layout + colgroup (доли + фикс. колонка действий), без drag-resize */
#workspaceHubThemesBoard .list-table.list-table--themes-hub-fixed{
  table-layout:fixed;
  width:100%;
}
/* Перебить глобальные .list-table nth-child (под контакты): иначе границы колонок «плывут» между thead и tbody */
#workspaceHubThemesBoard .list-table.list-table--themes-hub-fixed th:nth-child(1),
#workspaceHubThemesBoard .list-table.list-table--themes-hub-fixed td:nth-child(1){
  width:20%;
}
#workspaceHubThemesBoard .list-table.list-table--themes-hub-fixed th:nth-child(2),
#workspaceHubThemesBoard .list-table.list-table--themes-hub-fixed td:nth-child(2){
  width:36%;
}
#workspaceHubThemesBoard .list-table.list-table--themes-hub-fixed th:nth-child(3),
#workspaceHubThemesBoard .list-table.list-table--themes-hub-fixed td:nth-child(3){
  width:15%;
}
#workspaceHubThemesBoard .list-table.list-table--themes-hub-fixed th:nth-child(4),
#workspaceHubThemesBoard .list-table.list-table--themes-hub-fixed td:nth-child(4){
  width:auto;
  min-width:0;
}
#workspaceHubThemesBoard .list-table.list-table--themes-hub-fixed th:nth-child(5),
#workspaceHubThemesBoard .list-table.list-table--themes-hub-fixed td:nth-child(5),
#workspaceHubThemesBoard .list-table.list-table--themes-hub-fixed th:last-child,
#workspaceHubThemesBoard .list-table.list-table--themes-hub-fixed td:last-child{
  width:112px;
  min-width:112px;
  max-width:112px;
  box-sizing:border-box;
}
/* Единые отступы и vertical-align — иначе горизонтальные линии сетки «ступенятся» между колонками */
#workspaceHubThemesBoard .list-table.list-table--themes-hub-fixed > thead > tr > th,
#workspaceHubThemesBoard .list-table.list-table--themes-hub-fixed > tbody > tr > td{
  vertical-align:middle;
  padding:10px 12px;
  box-sizing:border-box;
}
#workspaceHubThemesBoard .list-table.list-table--themes-hub-fixed > thead > tr > th:last-child,
#workspaceHubThemesBoard .list-table.list-table--themes-hub-fixed > tbody > tr > td:last-child{
  padding:10px 6px;
}
#workspaceHubThemesBoard .list-table.list-table--themes-hub-fixed tbody td.status-cell,
#workspaceHubThemesBoard .list-table.list-table--themes-hub-fixed tbody td.responsible-cell{
  padding:10px 12px !important;
}
#workspaceHubThemesBoard .list-table.list-table--themes-hub-fixed td:last-child{
  overflow:hidden;
}
#workspaceHubThemesBoard .list-table.list-table--themes-hub-fixed td.row-actions{
  /* Важно: оставляем td как table-cell, иначе линии сетки могут "обрываться" */
  display:table-cell !important;
  text-align:center;
  white-space:nowrap;
  overflow:hidden;
  box-sizing:border-box;
}
#workspaceHubThemesBoard .list-table.list-table--themes-hub-fixed td.row-actions form{
  display:inline-block;
  vertical-align:middle;
  margin:0;
}
#workspaceHubThemesBoard .list-table.list-table--themes-hub-fixed td.row-actions .btn-icon-small{
  vertical-align:middle;
  display:inline-flex;
}
/* Поиск: одна визуальная высота строки = line-height; крестик по центру плейсхолдера/текста */
.app--layout-compare-wrap .contact-database-compare-wrap .toolbar .search-line{
  --contact-db-search-line-h:1.35;
  /* Одна метка размера для лупы и крестика (чуть меньше прежней лупы 1.28em) */
  --contact-db-search-icon-em:1.1;
  align-items:center;
  gap:10px;
  /* Чуть ярче, чем общий --block-border-panel (0.70) */
  border-bottom:1px solid rgba(var(--block-border-rgb), 0.84);
  /* Симметрично по вертикали; слева и справа как у зоны иконок (7px) */
  padding:6px 7px 6px 7px;
  margin:0;
  border-radius:0;
  cursor:text;
  transition:border-bottom-color 0.2s ease, background-color 0.2s ease;
  /* Как у .list-table td в таблице контактов ниже */
  font-size:14px;
  line-height:var(--contact-db-search-line-h);
}
.app--layout-compare-wrap .contact-database-compare-wrap .toolbar .search-line:hover{
  border-bottom-color:var(--block-border-hover);
  background-color:rgba(var(--block-border-rgb), 0.1);
}
.app--layout-compare-wrap .contact-database-compare-wrap .toolbar .search-line:focus-within{
  border-bottom-color:var(--block-border-focus);
  background-color:rgba(var(--block-border-rgb), 0.14);
}
.app--layout-compare-wrap .contact-database-compare-wrap .search-line .btn-search--leading-icon{
  flex-shrink:0;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  box-sizing:border-box;
  height:calc(var(--contact-db-search-line-h) * 1em);
  padding:0;
  margin:0;
  line-height:0;
  vertical-align:middle;
  opacity:1;
  cursor:pointer;
}
.app--layout-compare-wrap .contact-database-compare-wrap .search-line .btn-search--leading-icon:hover{
  opacity:1;
}
.app--layout-compare-wrap .contact-database-compare-wrap .search-line .btn-search__icon-img{
  display:block;
  width:calc(var(--contact-db-search-icon-em) * 1em);
  height:calc(var(--contact-db-search-icon-em) * 1em);
  min-width:14px;
  min-height:14px;
  object-fit:contain;
  /* Раньше стояло opacity ~0.5 — лупа казалась бледной; показываем файл как есть */
  opacity:1;
}
.app--layout-compare-wrap .contact-database-compare-wrap .search-line .search-input{
  flex:1;
  min-width:0;
  background:transparent;
  border:none;
  border-radius:0;
  box-shadow:none;
  padding:0;
  margin:0;
  font-size:inherit;
  font-weight:400;
  line-height:var(--contact-db-search-line-h);
  color:var(--ink);
  box-sizing:border-box;
  height:calc(var(--contact-db-search-line-h) * 1em);
  min-height:calc(var(--contact-db-search-line-h) * 1em);
  -webkit-appearance:none;
  appearance:none;
}
.app--layout-compare-wrap .contact-database-compare-wrap .search-line .search-input:focus{
  outline:none;
}
.app--layout-compare-wrap .contact-database-compare-wrap .search-line .search-input::placeholder{
  color:rgba(20,25,34,0.45);
  opacity:1;
  font-weight:400;
}
.app--layout-compare-wrap .contact-database-compare-wrap .search-line .search-clear-btn{
  flex-shrink:0;
  align-self:center;
  box-sizing:border-box;
  /* Равные отступы сверху / справа / снизу / слева вокруг иконки */
  display:inline-grid;
  place-items:center;
  place-content:center;
  padding:7px;
  margin:0 0 0 10px;
  width:calc(var(--contact-db-search-icon-em) * 1em + 14px);
  height:calc(var(--contact-db-search-icon-em) * 1em + 14px);
  min-width:calc(var(--contact-db-search-icon-em) * 1em + 14px);
  min-height:calc(var(--contact-db-search-icon-em) * 1em + 14px);
  background:transparent;
  border:none;
  cursor:pointer;
  color:rgba(20,25,34,0.42);
  line-height:0;
  border-radius:0;
}
.app--layout-compare-wrap .contact-database-compare-wrap .search-line .search-clear-btn:hover{
  color:rgba(20,25,34,0.88);
}
.app--layout-compare-wrap .contact-database-compare-wrap .search-line .search-clear-btn svg{
  display:block;
  width:calc(var(--contact-db-search-icon-em) * 1em);
  height:calc(var(--contact-db-search-icon-em) * 1em);
  min-width:14px;
  min-height:14px;
}
@media (max-width:768px){
  .app--layout-compare-wrap .contact-database-compare-wrap .toolbar .search-line{
    font-size:13px;
  }
}
@media (max-width:720px){
  .app--layout-compare-wrap .contact-database-compare-wrap .toolbar .search-line{
    font-size:12px;
  }
}
.app--layout-compare-wrap .contact-database-compare-wrap .toolbar{
  margin-bottom:16px;
}
.app--layout-compare-wrap .contact-database-compare-wrap .table-card{
  margin-top:2px;
  padding:4px 2px 2px;
  box-sizing:border-box;
}
.app--layout-compare-wrap .contact-database-compare-wrap .table-card .list-table:not(.employees-table){
  table-layout:fixed;
  width:100%;
  max-width:none;
  border:1px solid rgba(20,25,34,0.24);
}
.app--layout-compare-wrap .contact-database-compare-wrap .table-card .list-table:not(.employees-table) th,
.app--layout-compare-wrap .contact-database-compare-wrap .table-card .list-table:not(.employees-table) td{
  min-width:0;
  vertical-align:middle;
  border-bottom:1px solid rgba(20,25,34,0.24);
}
.app--layout-compare-wrap .contact-database-compare-wrap .table-card .list-table:not(.employees-table) th:not(:last-child),
.app--layout-compare-wrap .contact-database-compare-wrap .table-card .list-table:not(.employees-table) td:not(:last-child){
  border-right:1px solid rgba(20,25,34,0.24);
}
.app--layout-compare-wrap .contact-database-compare-wrap .table-card .list-table:not(.employees-table) tr:last-child td{
  border-bottom:none;
}
.app--layout-compare-wrap .contact-database-compare-wrap .table-card .list-table:not(.employees-table) th:last-child,
.app--layout-compare-wrap .contact-database-compare-wrap .table-card .list-table:not(.employees-table) td:last-child{
  min-width:88px;
}
/* «Люди»: те же сетка и обводка, что у спикеров/компаний (без :not(.employees-table) границы остаются #e8e8e8) */
.app--layout-compare-wrap .contact-database-compare-wrap .table-card .list-table.employees-table{
  table-layout:fixed;
  width:100%;
  max-width:none;
  border:1px solid rgba(20,25,34,0.28);
}
.app--layout-compare-wrap .contact-database-compare-wrap .table-card .list-table.employees-table th,
.app--layout-compare-wrap .contact-database-compare-wrap .table-card .list-table.employees-table td{
  min-width:0;
  vertical-align:middle;
  border-bottom:1px solid rgba(20,25,34,0.28);
}
.app--layout-compare-wrap .contact-database-compare-wrap .table-card .list-table.employees-table th:not(:last-child),
.app--layout-compare-wrap .contact-database-compare-wrap .table-card .list-table.employees-table td:not(:last-child){
  border-right:1px solid rgba(20,25,34,0.28);
}
.app--layout-compare-wrap .contact-database-compare-wrap .table-card .list-table.employees-table tr:last-child td{
  border-bottom:none;
}
/* Плюс под таблицей «Люди»: слева, как контент остальных таблиц в блоке */
.contact-database-compare-wrap .employee-add-row{
  display:flex;
  justify-content:flex-start;
  margin-top:14px;
  padding-left:2px;
  box-sizing:border-box;
}
.contact-database-compare-wrap .employee-add-ghost{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  margin:0;
  padding:6px;
  border:none;
  background:transparent;
  border-radius:8px;
  cursor:pointer;
  color:rgba(20,25,34,0.42);
  line-height:0;
  transition:color 0.15s ease;
}
.contact-database-compare-wrap .employee-add-ghost:hover{
  color:rgba(20,25,34,0.78);
}
.contact-database-compare-wrap .employee-add-ghost:focus-visible{
  outline:2px solid var(--block-border-panel);
  outline-offset:2px;
}
/* Два подраздела на /<slug>/contacts: Спикеры + Компании */
.contact-database-merge{
  min-width:0;
}
.contact-database-heading{
  margin:0 0 12px 0;
}
.contact-database-heading__title{
  margin:0;
  font-size:22px;
  font-weight:600;
  color:#141922;
  letter-spacing:0.02em;
}
.database-subsection{
  margin-top:28px;
  scroll-margin-top:24px;
}
.database-subsection:first-of-type{
  margin-top:0;
}
.database-subsection__title{
  margin:0 0 14px 0;
  font-size:17px;
  font-weight:600;
  color:rgba(20,25,34,0.88);
}
.database-subsection .toolbar{
  margin-bottom:14px;
}
.app--layout-compare-wrap .app-grid.app-grid--compare-contacts .toolbar{
  margin-bottom:16px;
}
.app--layout-compare-wrap .app-grid.app-grid--compare-contacts .panel .table-card{
  margin-top:2px;
  padding:4px 2px 2px;
  box-sizing:border-box;
}
.app--layout-compare-wrap .app-grid.app-grid--compare-contacts .panel .list-table:not(.employees-table) th{
  padding-top:14px;
  padding-bottom:14px;
}
.app--layout-compare-wrap .app-grid.app-grid--compare-contacts .panel .list-table:not(.employees-table) td{
  padding-top:13px;
  padding-bottom:13px;
}
/* Таблица на всю ширину панели; доли колонок — общие правила .list-table nth-child; ресайз — инлайн из TableResizer */
.app--layout-compare-wrap .panel .table-card .list-table:not(.employees-table){
  table-layout:fixed;
  width:100%;
  max-width:100%;
  border:1px solid rgba(20,25,34,0.24);
}
.app--layout-compare-wrap .panel .table-card .list-table:not(.employees-table) th,
.app--layout-compare-wrap .panel .table-card .list-table:not(.employees-table) td{
  min-width:0;
  border-bottom:1px solid rgba(20,25,34,0.24);
}
.app--layout-compare-wrap .panel .table-card .list-table:not(.employees-table) th:not(:last-child),
.app--layout-compare-wrap .panel .table-card .list-table:not(.employees-table) td:not(:last-child){
  border-right:1px solid rgba(20,25,34,0.24);
}
.app--layout-compare-wrap .panel .table-card .list-table:not(.employees-table) tr:last-child td{
  border-bottom:none;
}
.app--layout-compare-wrap .panel .table-card .list-table:not(.employees-table) th:last-child,
.app--layout-compare-wrap .panel .table-card .list-table:not(.employees-table) td:last-child{
  min-width:88px;
}
.app--layout-compare-wrap .panel .table-card .list-table.employees-table{
  table-layout:fixed;
  width:100%;
  max-width:100%;
  border:1px solid rgba(20,25,34,0.28);
}
.app--layout-compare-wrap .panel .table-card .list-table.employees-table th,
.app--layout-compare-wrap .panel .table-card .list-table.employees-table td{
  min-width:0;
  border-bottom:1px solid rgba(20,25,34,0.28);
}
.app--layout-compare-wrap .panel .table-card .list-table.employees-table th:not(:last-child),
.app--layout-compare-wrap .panel .table-card .list-table.employees-table td:not(:last-child){
  border-right:1px solid rgba(20,25,34,0.28);
}
.app--layout-compare-wrap .panel .table-card .list-table.employees-table tr:last-child td{
  border-bottom:none;
}

/* layout-compare: не даём внутренним boards раздувать ширину страницы */
body:has(.app--layout-compare-wrap) .app--layout-compare-wrap .office-board{
  margin-left:0 !important;
  margin-right:0 !important;
  max-width:100% !important;
}
.app--layout-compare-wrap .tasks-main-layout{
  background:var(--priority-task-card-surface-bg);
  border:var(--priority-task-card-surface-border);
  border-radius:var(--priority-task-card-surface-radius);
  overflow:hidden;
  margin-left:0 !important;
  margin-right:0 !important;
  box-shadow:none;
}
.app--layout-compare-wrap .tasks-main-layout__left .tasks-section{
  background:transparent;
  border:none;
  border-radius:0;
}
.app--layout-compare-wrap .task-summary-panel{
  background:transparent;
  border:none;
  border-radius:0;
}
/* Полоска-напоминание над дашбордом */
.layout-compare-banner{
  margin:0 0 16px;
  padding:0;
  max-width:none;
  box-sizing:border-box;
}
.layout-compare-banner__text{
  margin:0;
  font-size:14px;
  color:#666;
}
.layout-compare-banner__text a{
  color:#E46402;
}
.layout-compare-banner__link{
  margin-left:12px;
  white-space:nowrap;
}
/* Обёртка шапки + сетки; отступы в ряд с основным макетом */
.now-block-wrap--compare{
  /*
   * Фиксированная высота карточки «Важно» (экран ≥901px), пиксели: --compare-mid-max-px.
   * Совпадает с высотой правой колонки (табы); не растёт от контента справа.
   */
  /* Высота верхнего ряда (Важно + табы «Что происходит»): −10% к базовым 620px */
  --compare-mid-max-px:calc(620px * 0.9);
  display:flex;
  flex-direction:column;
  /* Возвращаем исходный отступ от даты до «Важно» */
  gap:24px;
  /* занимает ширину контейнера compare (поля задаёт .app--layout-compare-wrap) */
  max-width:none !important;
  width:100%;
  margin:0 0 16px !important;
  padding:0 !important;
  box-sizing:border-box;
}
section.app.app--layout-compare-wrap > .now-block-wrap--compare{
  margin:0 0 16px 0 !important;
  width:100%;
  max-width:100%;
  box-sizing:border-box;
}

/* Страница «Контакты»: только шапка проекта (без блока «Сейчас»), те же отступы что у полного wrap */
.now-block-wrap--compare.now-block-wrap--header-only{
  gap:0;
}

/* Отдельный шаг между верхним рядом и календарём (реальный, не transform) */
.now-block-compare__content{
  display:flex;
  flex-direction:column;
  gap:24px;
  min-width:0;
}
/* Шапка: заголовок и аватары в одной строке (по вертикали по центру), дата/время ниже */
.now-block-compare__header{
  display:flex;
  flex-direction:column;
  align-items:stretch;
  gap:0;
  margin-bottom:0;
}
.now-block-compare__header-top{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:10px;
  flex-wrap:wrap;
  min-width:0;
}
.now-block-compare__title{
  margin:0;
  font-size:44px;
  font-weight:500;
  line-height:1.08;
  color:#08080a;
  flex:1 1 auto;
  min-width:0;
}
/* Строка времени и даты под названием */
.now-block-compare__datetime{
  margin:4px 0 0 0; /* отступ только между заголовком и датой/временем */
  font-size:16px;
  color:rgba(87, 85, 85, 0.65);
}
/* Сетка: левая колонка «Важно» + «Мероприятия», правая — табы (ширина левой колонки как раньше) */
.now-block-compare__grid{
  display:grid;
  grid-template-columns:minmax(380px,420px) 1fr;
  gap:16px;
  align-items:stretch;
  min-width:0;
}

/* ----- Приоритетные задачи (layout-compare) -----
   Эталонный блок: оставлять как есть при экспериментах с остальными карточками (вместе с .tasks-alt-summary).
   Внешний блок — как .tasks-alt-summary; внутренние карточки — .priority-task-card */
.priority-tasks{
  margin:0;
  min-width:0;
  border-radius:16px;
  background:linear-gradient(180deg, rgba(41,163,177,0.45) 0%, rgba(18,225,149,0.22) 100%);
  border:1px solid var(--block-border-frosted);
  padding:22px 28px;
  box-sizing:border-box;
}
.priority-tasks__shell{
  display:flex;
  flex-direction:column;
  gap:14px;
  min-width:0;
}
.priority-tasks__title{
  margin:0;
  font-size:20px;
  font-weight:500;
  letter-spacing:0;
  color:#141922;
}

/* ----- Редактор задач (layout-compare) ----- */
.tasks-editor{
  margin:0;
  min-width:0;
  border-radius:16px;
  background:linear-gradient(180deg, rgba(41,163,177,0.22) 0%, rgba(18,225,149,0.10) 100%);
  border:1px solid var(--block-border-frosted);
  padding:22px 28px;
  box-sizing:border-box;
}
.tasks-editor__shell{
  display:flex;
  flex-direction:column;
  gap:14px;
  min-width:0;
}
.tasks-editor__title{
  margin:0;
  font-size:20px;
  font-weight:500;
  letter-spacing:0;
  color:#141922;
}
.tasks-editor__panel{
  border-radius:14px;
  background:rgba(255,255,255,0.72);
  border:1px solid rgba(0,0,0,0.06);
  padding:16px 16px 14px;
  box-sizing:border-box;
  min-height:260px;
}
.tasks-editor__top{
  display:flex;
  align-items:center;
  gap:12px;
}
.tasks-editor__select{
  flex:1;
  min-width:0;
  position:relative;
  display:flex;
  align-items:center;
  gap:8px;
}
.tasks-editor__title-input{
  flex:1;
  min-width:0;
  border:1px solid rgba(0,0,0,0.10);
  background:rgba(255,255,255,0.85);
  border-radius:12px;
  padding:10px 12px;
  font-size:13px;
  font-weight:400;
  color:rgba(20,25,34,0.74);
  font-family:inherit;
  outline:none;
  box-sizing:border-box;
}
.tasks-editor__title-input::placeholder{
  color:rgba(20,25,34,0.48);
}
.tasks-editor__title-input:disabled{
  opacity:0.55;
  cursor:not-allowed;
}
.tasks-editor__select-caret{
  width:34px;
  height:34px;
  border-radius:12px;
  border:1px solid rgba(0,0,0,0.08);
  background:rgba(255,255,255,0.75);
  color:rgba(20,25,34,0.45);
  display:flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  box-sizing:border-box;
  flex:0 0 auto;
}
.tasks-editor__select-caret svg{ width:16px; height:16px; }
.tasks-editor__select-caret:disabled{
  opacity:0.45;
  cursor:not-allowed;
}
.tasks-editor__select-menu{
  position:absolute;
  top:calc(100% + 8px);
  left:0;
  right:0;
  z-index:30;
  border-radius:14px;
  border:1px solid rgba(0,0,0,0.10);
  background:rgba(255,255,255,0.98);
  box-shadow:0 12px 30px rgba(0,0,0,0.10);
  padding:6px;
  max-height:260px;
  overflow:auto;
}
.tasks-editor__select-item{
  width:100%;
  border:none;
  background:transparent;
  text-align:left;
  padding:10px 10px;
  border-radius:10px;
  cursor:pointer;
  font-size:14px;
  color:#141922;
}
.tasks-editor__select-item:hover,
.tasks-editor__select-item:focus-visible{
  background:rgba(41,163,177,0.12);
  outline:none;
}
.tasks-editor__select-item.is-active{
  background:rgba(18,225,149,0.14);
}
.tasks-editor__icons{
  display:flex;
  align-items:center;
  gap:10px;
}
.tasks-editor__icon{
  width:34px;
  height:34px;
  border-radius:12px;
  border:1px solid rgba(0,0,0,0.08);
  background:rgba(255,255,255,0.75);
  color:rgba(20,25,34,0.55);
  display:flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  box-sizing:border-box;
}
.tasks-editor__icon:disabled{
  opacity:0.45;
  cursor:not-allowed;
}
.tasks-editor__panel:not(.tasks-editor__panel--inactive) .tasks-editor__icon{
  color:rgba(41,163,177,0.95);
  border-color:rgba(41,163,177,0.22);
  background:rgba(255,255,255,0.88);
}
.tasks-editor__panel:not(.tasks-editor__panel--inactive) #tasksEditorPersonBtn{
  color:#fff;
  border-color:rgba(0,0,0,0);
  background:linear-gradient(135deg, rgba(41,163,177,0.98) 0%, rgba(18,225,149,0.96) 100%);
  box-shadow:0 10px 24px rgba(41,163,177,0.20);
}
.tasks-editor__panel:not(.tasks-editor__panel--inactive) #tasksEditorPersonBtn .tasks-editor__avatar{
  background:rgba(255,255,255,0.92);
  box-shadow:inset 0 0 0 1px rgba(0,0,0,0.06);
}
.tasks-editor__panel:not(.tasks-editor__panel--inactive) .tasks-editor__select-caret{
  color:rgba(41,163,177,0.95);
  border-color:rgba(41,163,177,0.22);
  background:rgba(255,255,255,0.88);
}
.tasks-editor__panel:not(.tasks-editor__panel--inactive) .tasks-editor__title-input{
  background:#fff;
}
.tasks-editor__headline{
  margin:0;
  font-size:18px;
  font-weight:600;
  color:#141922;
  line-height:1.2;
}
.tasks-editor__avatar{
  width:18px;
  height:18px;
  border-radius:50%;
  background:rgba(0,0,0,0.08);
  display:inline-block;
}
.tasks-editor__dropzone{
  margin-top:14px;
  border-top:1px solid rgba(0,0,0,0.08);
  padding-top:14px;
  min-height:180px;
  display:flex;
  align-items:flex-start;
  justify-content:flex-start;
}
.tasks-editor__placeholder{
  color:rgba(20,25,34,0.50);
  font-style:italic;
  user-select:none;
}
.tasks-editor__panel--inactive{
  opacity:0.65;
}
.tasks-editor__panel--dragover{
  outline:2px dashed rgba(228,100,2,0.65);
  outline-offset:3px;
}
.priority-tasks__workarea{
  min-width:0;
}
/* Карточки и «+» в одном потоке: фиксированный зазор, без широкой «ячейки» */
.priority-tasks__workarea--strip{
  --priority-strip-gap:16px;
  display:flex;
  flex-flow:row wrap;
  /* Верх по строке: если одна карточка раскрывает фактуру вниз, остальные не «ездят» по центру */
  align-items:flex-start;
  gap:var(--priority-strip-gap);
}
.priority-tasks__canvas{
  margin:0;
  border:none;
  border-radius:0;
  background:transparent;
}
.priority-tasks__canvas--contents{
  display:contents;
}
.priority-tasks__add{
  flex:0 0 auto;
  width:34px;
  height:34px;
  margin:0;
  padding:0;
  border:none;
  border-radius:12px;
  background:transparent;
  color:rgba(0,0,0,0.55);
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:center;
  transition:background 0.15s ease, color 0.15s ease;
  box-shadow:none;
}
.priority-tasks__add:hover{
  background:rgba(255,255,255,0.18);
  color:rgba(0,0,0,0.65);
}
.priority-tasks__add:focus-visible{
  box-shadow:0 0 0 2px rgba(0,0,0,0.12);
  outline:none;
}
.priority-tasks__add-icon{
  font-size:22px;
  font-weight:400;
  line-height:1;
}
.priority-tasks__add:disabled{
  opacity:0.35;
  cursor:not-allowed;
  transform:none;
}

.priority-task-card{
  --priority-card-pad:16px;
  --priority-hit:28px;
  --priority-icon-r:6px;
  position:relative;
  align-self:flex-start;
  flex:0 0 auto;
  /* 3 карточки в ряд (с учётом gap у strip) */
  flex:1 1 calc((100% - (var(--priority-strip-gap) * 2)) / 3);
  width:calc((100% - (var(--priority-strip-gap) * 2)) / 3);
  max-width:calc((100% - (var(--priority-strip-gap) * 2)) / 3);
  min-width:260px;
  min-height:148px;
  box-sizing:border-box;
  padding:var(--priority-card-pad);
  border-radius:var(--priority-task-card-surface-radius);
  border:var(--priority-task-card-surface-border);
  background:var(--priority-task-card-surface-bg);
  box-shadow:none;
  /* Колонка 2: верх — действия (×, карандаш), низ — аватары — общий правый край */
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  grid-template-rows:auto minmax(0,1fr) auto;
  gap:12px 10px;
  align-items:stretch;
}
.priority-task-card__main-band{
  grid-column:1;
  grid-row:1;
  display:flex;
  align-items:flex-start;
  justify-content:flex-start;
  align-self:start;
  min-height:0;
  min-width:0;
}
.priority-task-card__actions{
  grid-column:2;
  grid-row:1;
  display:flex;
  flex-direction:row;
  align-items:center;
  justify-content:flex-end;
  /* визуально минимальный зазор между карандашом и × */
  gap:0;
  justify-self:end;
  align-self:start;
  margin-top:2px;
}
/* У символа × есть встроенные “поля”, поэтому визуально сближаем кнопки (overlap) */
.priority-task-card__actions > .priority-task-card__close{
  margin-left:-7px !important;
}
.priority-task-card__edit{
  box-sizing:border-box;
  width:var(--priority-hit);
  height:var(--priority-hit);
  margin:0;
  padding:0;
  border:1px solid transparent;
  border-radius:var(--priority-icon-r);
  background:transparent;
  color:rgba(0,0,0,0.32);
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:center;
  flex-shrink:0;
  transition:color 0.15s ease, background 0.15s ease;
}
.priority-task-card__edit:hover{
  color:rgba(0,0,0,0.55);
  background:transparent;
}
.priority-task-card__edit-icon{
  display:block;
  width:15px;
  height:15px;
}
.priority-task-card__middle{
  flex:0 1 auto;
  width:100%;
  min-width:0;
}
.priority-task-card__title{
  margin:0;
  padding:0;
  font-size:15px;
  font-weight:500;
  color:rgba(20,25,34,0.85);
  line-height:1.35;
  width:100%;
  min-width:0;
}
.priority-task-card__close{
  flex-shrink:0;
  position:relative;
  z-index:2;
  box-sizing:border-box;
  width:var(--priority-hit);
  height:var(--priority-hit);
  margin:0;
  padding:0;
  border:1px solid transparent;
  border-radius:var(--priority-icon-r);
  background:transparent;
  color:rgba(0,0,0,0.32);
  font-size:18px;
  line-height:1;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:center;
  transition:color 0.15s ease, background 0.15s ease;
}
.priority-task-card__close:hover{
  color:rgba(0,0,0,0.55);
  background:transparent;
}
.priority-task-card__bottom{
  display:contents;
}
/* Одна линия с аватарами: та же колонка 2 → общий правый край */
.priority-task-card__factura-toggle{
  grid-column:1;
  grid-row:3;
  align-self:center;
  justify-self:start;
  box-sizing:border-box;
  width:var(--priority-hit);
  min-width:var(--priority-hit);
  height:var(--priority-hit);
  padding:0;
  margin:0;
  border:1px solid transparent;
  border-radius:var(--priority-icon-r);
  background:transparent;
  cursor:pointer;
  display:flex;
  flex-direction:column;
  align-items:stretch;
  justify-content:center;
  gap:3px;
  color:rgba(0,0,0,0.55);
  transition:color 0.15s ease, background 0.15s ease;
}
.priority-task-card__factura-toggle:hover{
  color:rgba(0,0,0,0.72);
  background:rgba(255,255,255,0.18);
}
/* Линии крупнее и плотнее, чтобы визуально соответствовать квадрату аватара */
.priority-task-card__factura-toggle span{
  display:block;
  height:2px;
  background:currentColor;
  border-radius:1px;
}
.priority-task-card__drag-handle{
  grid-column:1;
  grid-row:3;
  align-self:center;
  justify-self:start;
  margin-left:calc(var(--priority-hit) + 8px);
  box-sizing:border-box;
  width:var(--priority-hit);
  min-width:var(--priority-hit);
  height:var(--priority-hit);
  padding:0;
  border:1px solid transparent;
  border-radius:var(--priority-icon-r);
  background:transparent;
  cursor:grab;
  display:flex;
  align-items:center;
  justify-content:center;
  color:rgba(0,0,0,0.55);
  transition:color 0.15s ease, background 0.15s ease;
}
.priority-task-card__drag-handle:hover{
  color:rgba(0,0,0,0.72);
  background:rgba(255,255,255,0.18);
}
.priority-task-card__drag-handle:active{
  cursor:grabbing;
}
.priority-task-card__drag-handle svg{ width:16px; height:16px; }
.priority-task-card__people{
  grid-column:2;
  grid-row:3;
  justify-self:end;
  align-self:center;
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:8px;
  margin:0;
  padding:0;
  flex-shrink:0;
  min-width:0;
}
.priority-task-card__avatar{
  flex-shrink:0;
  box-sizing:border-box;
  width:var(--priority-hit);
  height:var(--priority-hit);
  margin:0;
  padding:0;
  /* инициалам тоже нужна тонкая обводка, не только плейсхолдеру */
  border:1px solid rgba(0,0,0,0.07);
  border-radius:var(--priority-icon-r);
  display:grid;
  place-items:center;
  font-size:12px;
  font-weight:600;
  line-height:1;
  letter-spacing:0.02em;
  color:rgba(20,25,34,0.75);
  background:transparent;
  overflow:hidden;
}
.priority-task-card__avatar--empty{
  /* тонкая/лёгкая обводка плейсхолдера */
  border-color:rgba(0,0,0,0.07);
  background:transparent;
}
.priority-task-card__factura-panel{
  grid-column:1 / -1;
  grid-row:4;
  flex-shrink:0;
  width:100%;
  margin-top:0;
  padding:12px 0 0;
  border-radius:0;
  border:none;
  border-top:1px solid var(--block-border-panel);
  background:transparent;
  font-size:15px;
  line-height:1.4;
  color:rgba(20,25,34,0.85);
  white-space:pre-wrap;
  max-height:160px;
  overflow-y:auto;
  user-select:text;
  cursor:text;
}
.priority-task-card__factura-empty{
  color:rgba(20,25,34,0.55);
  font-style:italic;
}
.priority-task-card__factura-panel[hidden]{
  display:none !important;
}

.priority-task-modal__dialog{
  max-width:520px;
}
.priority-task-modal__title{
  margin:0 0 18px 0;
  font-size:20px;
  font-weight:500;
}
.priority-task-modal__group-label{
  display:block;
  margin-bottom:8px;
  font-size:14px;
  font-weight:500;
  color:#141922;
}
.priority-task-modal__hint{
  margin:0 0 8px 0;
  font-size:13px;
  line-height:1.4;
  color:rgba(0,0,0,0.5);
}
.priority-task-modal__people-picker{
  width:100%;
}
.priority-task-modal__chips{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin:0 0 10px 0;
  min-height:0;
}
.priority-task-modal__chip{
  display:inline-flex;
  align-items:center;
  gap:6px;
  max-width:100%;
  padding:5px 6px 5px 10px;
  border-radius:999px;
  font-size:13px;
  line-height:1.25;
  color:#141922;
  background:rgba(41,163,177,0.14);
  border:1px solid var(--block-border-divider);
  box-sizing:border-box;
}
.priority-task-modal__chip-text{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  max-width:220px;
}
.priority-task-modal__chip-remove{
  flex-shrink:0;
  width:22px;
  height:22px;
  margin:0;
  padding:0;
  border:none;
  border-radius:50%;
  background:rgba(0,0,0,0.06);
  color:rgba(0,0,0,0.55);
  font-size:16px;
  line-height:1;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:center;
}
.priority-task-modal__chip-remove:hover{
  background:rgba(0,0,0,0.1);
  color:rgba(0,0,0,0.72);
}
.priority-task-modal__combobox{
  position:relative;
  width:100%;
}
.priority-task-modal__combobox input[type="text"]{
  width:100%;
  box-sizing:border-box;
}
.priority-task-modal__suggest{
  position:absolute;
  left:0;
  right:0;
  top:calc(100% + 4px);
  z-index:30;
  max-height:220px;
  overflow-y:auto;
  overflow-x:hidden;
  margin:0;
  padding:4px;
  border-radius:10px;
  border:1px solid rgba(0,0,0,0.14);
  background:#fff;
  box-shadow:0 8px 24px rgba(0,0,0,0.08);
}
.priority-task-modal__suggest-item{
  display:block;
  width:100%;
  margin:0;
  padding:10px 10px;
  border:none;
  border-radius:8px;
  background:transparent;
  text-align:left;
  font-size:14px;
  line-height:1.35;
  color:rgba(20,25,34,0.88);
  cursor:pointer;
  box-sizing:border-box;
}
.priority-task-modal__suggest-item:hover,
.priority-task-modal__suggest-item:focus-visible{
  background:rgba(0,0,0,0.05);
  outline:none;
}
.priority-task-modal__suggest-item.is-active{
  background:rgba(41,163,177,0.14);
}
.priority-task-modal__people-loadhint{
  margin:10px 0 0 0;
  padding:10px 12px;
  border-radius:10px;
  border:1px dashed rgba(0,0,0,0.14);
  font-size:13px;
  line-height:1.4;
  color:rgba(0,0,0,0.48);
}
.priority-task-modal__people-loadhint .priority-task-modal__people-retry{
  margin:8px 0 0 0;
  padding:8px 14px;
  font-size:13px;
  font-weight:500;
  border-radius:8px;
  border:1px solid rgba(0,0,0,0.18);
  background:rgba(255,255,255,0.95);
  color:#141922;
  cursor:pointer;
}
.priority-task-modal__people-loadhint .priority-task-modal__people-retry:hover{
  background:rgba(0,0,0,0.04);
}
.priority-task-modal__actions{
  display:flex;
  justify-content:flex-end;
  gap:12px;
  margin-top:20px;
  padding-top:18px;
  border-top:1px solid var(--block-border-divider);
}

@media (max-width:700px){
  .priority-tasks{
    padding:18px 16px 22px;
  }
  .priority-tasks__title{
    font-size:18px;
  }
  .priority-task-card{
    width:100%;
    max-width:none;
  }
}

/* Нижний ряд: два блока 50/50 */
.now-block-compare__lower-grid{
  display:flex;
  gap:16px;
  align-items:stretch;
  gap:16px;
  /* Как у верхнего ряда: компактнее, ближе к «Важно/Что происходит» */
  margin-top:0;
  min-width:0;
  grid-column:1 / -1;
  justify-items:start;
}

/* Календарь (layout-compare): карточка под «Важно», половина ширины */
.now-block-wrap--compare .now-block-compare__card--calendar-grid{
  /* Быстрые настройки заголовка «Календарь» (меняй тут) */
  --cal-title-size: 24px;
  --cal-title-weight: 400;
  --cal-title-color: #33363F;
  --cal-title-letter-spacing: 0;

  width:60%;
  max-width:100%;
  padding:22px 28px 28px;
  background:#F8F8F8;
  border:1px solid var(--block-border-panel);
  box-shadow:none;
  border-radius:16px;
}
.now-block-wrap--compare .now-block-compare__card--later-thoughts{
  width:40%;
  max-width:100%;
  padding:22px 28px 22px;
  background:#F8F8F8;
  border:1px solid var(--block-border-panel);
  box-shadow:none;
  border-radius:16px;
  min-width:0;
}
.now-block-wrap--compare .now-block-compare__card--later-thoughts .now-block-compare__card-title{
  font-size:22px !important;
  font-weight:500 !important;
  letter-spacing:0.02em !important;
  color:rgba(0,0,0,0.72) !important;
}
.now-block-wrap--compare .now-block-compare__card--later-thoughts .later-thoughts{
  flex:1;
  min-height:0;
  display:flex;
  flex-direction:column;
}
.now-block-wrap--compare .now-block-compare__card--later-thoughts .later-thoughts__list{
  flex:1;
  overflow:auto;
  order:3;
}
.now-block-wrap--compare .now-block-compare__card--later-thoughts .later-thoughts__input{
  order:2;
  margin-top:10px;
  background:#fff;
}
.now-block-wrap--compare .now-block-compare__card--later-thoughts .team-busy-empty{
  order:1;
  font-size:16px;
  line-height:1.35;
  padding:6px 0 0;
}
@media (max-width: 980px){
  .now-block-compare__lower-grid{
    flex-direction:column;
  }
  .now-block-wrap--compare .now-block-compare__card--later-thoughts{
    width:100%;
  }
}
.now-block-wrap--compare .compare-calendar-grid{
  display:flex;
  flex-direction:column;
  min-width:0;
}
.now-block-wrap--compare .compare-calendar-grid__head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:14px;
}
.now-block-wrap--compare .compare-calendar-grid__head .now-block-compare__card-title{
  margin:0;
  font-size:var(--cal-title-size);
  font-weight:var(--cal-title-weight);
  color:var(--cal-title-color);
  letter-spacing:var(--cal-title-letter-spacing);
}
.now-block-wrap--compare .compare-calendar-grid__add{
  opacity:0.65;
}
.now-block-wrap--compare .compare-calendar-grid__add:hover{
  opacity:1;
}

/* 2 видимые строки карточек + вертикальный скролл при переполнении */
.now-block-wrap--compare .compare-calendar-grid__body{
  --cal-gap:12px;
  --cal-card-h:140px;
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:var(--cal-gap);
  max-height:calc((var(--cal-card-h) * 2) + var(--cal-gap));
  overflow-y:auto;
  padding-right:6px; /* воздух под скролл */
}
@media (max-width: 980px){
  .now-block-wrap--compare .now-block-compare__card--calendar-grid{
    width:100%;
  }
  .now-block-wrap--compare .compare-calendar-grid__body{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }
}

.now-block-wrap--compare .compare-calendar-card{
  height:var(--cal-card-h);
  border:1px solid var(--block-border-frosted);
  border-radius:14px;
  padding:14px 16px;
  box-sizing:border-box;
  display:flex;
  flex-direction:column;
  gap:10px;
  min-width:0;
  position:relative;
}
.now-block-wrap--compare .compare-calendar-card:hover{
  border-color:var(--block-border-hover);
}
.now-block-wrap--compare .compare-calendar-card--v1{ background:#C9F1E4; }
.now-block-wrap--compare .compare-calendar-card--v2{ background:#9EC4E4; }
.now-block-wrap--compare .compare-calendar-card--v3{ background:#E7D2F7; }
.now-block-wrap--compare .compare-calendar-card--v4{ background:#BFEFDF; }

.now-block-wrap--compare .compare-calendar-card__top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  min-width:0;
}
.now-block-wrap--compare .compare-calendar-card__actions{
  display:flex;
  align-items:center;
  gap:10px;
  flex:0 0 auto;
}
.now-block-wrap--compare .compare-calendar-card__date{
  font-size:12px;
  line-height:1.2;
  color:rgba(0,0,0,0.42);
  font-variant-numeric:tabular-nums;
  white-space:nowrap;
}
.now-block-wrap--compare .compare-calendar-card__delete{
  border:none;
  background:transparent;
  padding:0;
  line-height:0;
  cursor:pointer;
  color:rgba(0,0,0,0.35);
}
.now-block-wrap--compare .compare-calendar-card__delete:hover{
  color:rgba(211,47,47,0.70);
}
.now-block-wrap--compare .compare-calendar-card__open{
  border:none;
  background:transparent;
  padding:0;
  line-height:0;
  cursor:pointer;
  color:rgba(0,0,0,0.40);
}
.now-block-wrap--compare .compare-calendar-card__open:hover{
  color:rgba(0,0,0,0.6);
}
.now-block-wrap--compare .compare-calendar-card__mid{
  display:block;
  min-width:0;
  margin-top:10px;
}
.now-block-wrap--compare .compare-calendar-card__title{
  font-size:14px;
  line-height:1.25;
  font-weight:400;
  color:rgba(51,54,63,0.82);
  flex:1 1 auto;
  min-width:0;
  white-space:normal;
  overflow:hidden;
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
  line-clamp:2;
  min-width:0;
}
.now-block-wrap--compare .compare-calendar-card__bottom{
  margin-top:auto;
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:8px;
}
.now-block-wrap--compare .compare-calendar-card__avatar{
  width:30px;
  height:30px;
  border-radius:10px;
  flex:0 0 30px;
  background:transparent;
  border:1px solid rgba(0,0,0,0.40);
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:11px;
  font-weight:700;
  letter-spacing:0.02em;
  color:rgba(0,0,0,0.55);
  user-select:none;
}
.now-block-wrap--compare .compare-calendar-card__avatar[class*="compare-calendar-card__avatar--v"]{
  border-color:rgba(0,0,0,0.40) !important;
  color:rgba(0,0,0,0.55) !important;
}
.now-block-wrap--compare .compare-calendar-grid__empty{
  padding:10px 0;
  color:rgba(0,0,0,0.42);
  grid-column:1 / -1;
}
.now-block-compare__card--lower{
  padding:22px 28px 24px;
  background:#F8F8F8;
  border:1px solid var(--block-border-panel);
  box-shadow:none;
  min-height:240px;
  display:flex;
  flex-direction:column;
}

/* «Мероприятия сегодня» — под стиль «Важно сегодня» */
.now-block-compare__card--events-today{
  padding:22px 28px 28px;
}
.now-block-compare__card--events-today .now-block-compare__card-title{
  margin:0 0 20px 0;
  font-size:22px;
  font-weight:500;
  letter-spacing:0.02em;
  color:rgba(0,0,0,0.72);
}

/* «Календарь» — как «Важно» по заголовку/отступам. */
.now-block-wrap--compare .now-block-compare__card.now-block-compare__card--calendar{
  /* На 40% меньше ширины (≈60% от ряда) */
  width:60%;
  max-width:100%;
  padding:0;
  background:#F8F8F8 !important;
  border:1px solid var(--block-border-panel);
  box-shadow:none;
}
.now-block-wrap--compare .now-block-compare__card--calendar .compare-calendar{
  display:flex;
  flex-direction:column;
  min-height:0;
}
.now-block-wrap--compare .now-block-compare__card--calendar .compare-calendar__head{
  padding:22px 28px 18px;
  background:transparent;
  border-top-left-radius:16px;
  border-top-right-radius:16px;
}
.now-block-wrap--compare .now-block-compare__card--calendar .now-block-compare__card-title{
  margin:0 0 16px 0;
  font-size:22px;
  font-weight:500;
  letter-spacing:0.02em;
  color:rgba(0,0,0,0.72);
}
.now-block-wrap--compare .now-block-compare__card--calendar .compare-calendar__head{
  color:rgba(0,0,0,0.72);
}
.now-block-wrap--compare .now-block-compare__card--calendar .compare-calendar__form input{
  background:#fff;
  border-color:var(--block-border-panel);
  color:rgba(0,0,0,0.72);
}
.now-block-wrap--compare .now-block-compare__card--calendar .compare-calendar__form input::placeholder{
  color:rgba(0,0,0,0.32);
  opacity:1;
}
.now-block-wrap--compare .now-block-compare__card--calendar .compare-calendar__form input:focus{
  outline:none;
  border-color:var(--block-border-focus);
  box-shadow:none;
}

/* Календарь: форма добавления — единая сетка */
.now-block-wrap--compare .now-block-compare__card--calendar .compare-calendar__form{
  display:grid;
  grid-template-columns:150px 110px 1fr auto;
  gap:10px 10px;
  align-items:stretch;
  width:100%;
  box-sizing:border-box;
}
.now-block-wrap--compare .now-block-compare__card--calendar .compare-calendar__time{
  min-width:0;
}
.now-block-wrap--compare .now-block-compare__card--calendar .compare-calendar__date{
  min-width:0;
}
.now-block-wrap--compare .now-block-compare__card--calendar .compare-calendar__title{
  min-width:0;
}
.now-block-wrap--compare .now-block-compare__card--calendar .compare-calendar__info{
  min-width:0;
  grid-column:1 / -1;
}
.now-block-wrap--compare .now-block-compare__card--calendar .compare-calendar__add{
  min-width:110px;
  white-space:nowrap;
  height:40px;
  padding:0 14px;
  border-radius:10px;
  border:none;
  background:linear-gradient(90deg, #29A3B1 0%, #12E195 100%);
  color:#fff;
  cursor:pointer;
  transition:filter 120ms ease, transform 120ms ease;
}
.now-block-wrap--compare .now-block-compare__card--calendar .compare-calendar__add:hover{
  filter:brightness(0.98);
}
.now-block-wrap--compare .now-block-compare__card--calendar .compare-calendar__add:active{
  transform:translateY(0.5px);
}
.now-block-wrap--compare .now-block-compare__card--calendar .compare-calendar__form input{
  height:40px;
  padding:0 12px;
  border-radius:10px;
  border:1px solid var(--block-border-panel);
  font-size:16px;
  line-height:1.2;
}
@media (max-width: 980px){
  .now-block-wrap--compare .now-block-compare__card--calendar .compare-calendar__form{
    grid-template-columns:1fr 1fr;
  }
  .now-block-wrap--compare .now-block-compare__card--calendar .compare-calendar__info{
    grid-column:1 / -1;
  }
  .now-block-wrap--compare .now-block-compare__card--calendar .compare-calendar__add{
    grid-column:1 / -1;
    justify-self:start;
  }
}

/* Календарь: список — единый шаблон строки, лёгкие разделители */
.now-block-wrap--compare .now-block-compare__card--calendar .compare-calendar__item{
  display:grid;
  grid-template-columns:90px 1fr auto;
  gap:12px;
  align-items:start;
  padding:10px 0;
  border-bottom:1px solid var(--block-border-divider);
  cursor:pointer;
}
.now-block-wrap--compare .now-block-compare__card--calendar .compare-calendar__item:first-child{
  padding-top:0;
}
.now-block-wrap--compare .now-block-compare__card--calendar .compare-calendar__item:last-child{
  padding-bottom:0;
}
.now-block-wrap--compare .now-block-compare__card--calendar .compare-calendar__item:last-child{
  border-bottom:none;
}
.now-block-wrap--compare .now-block-compare__card--calendar .compare-calendar__item:hover{
  background:rgba(0,0,0,0.02);
}
.now-block-wrap--compare .now-block-compare__card--calendar .compare-calendar__body{
  min-width:0;
}
.now-block-wrap--compare .now-block-compare__card--calendar .compare-calendar__date-pill{
  width:90px;
  color:rgba(0,0,0,0.45);
  font-size:13px;
  line-height:1.2;
  padding-top:2px;
  white-space:nowrap;
}
.now-block-wrap--compare .now-block-compare__card--calendar .compare-calendar__time-pill{
  color:rgba(0,0,0,0.42);
  font-variant-numeric:tabular-nums;
}
.now-block-wrap--compare .now-block-compare__card--calendar .compare-calendar__title-line{
  font-size:14px;
  line-height:1.35;
  color:rgba(51,54,63,0.82);
  font-weight:500;
  word-break:break-word;
}
.now-block-wrap--compare .now-block-compare__card--calendar .compare-calendar__info-line{
  margin-top:2px;
  font-size:14px;
  line-height:1.35;
  color:rgba(51,54,63,0.62);
  word-break:break-word;
}
.now-block-wrap--compare .now-block-compare__card--calendar .compare-calendar__info-line--preview{
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.now-block-wrap--compare .now-block-compare__card--calendar .compare-calendar__actions{
  display:flex;
  align-items:center;
  gap:8px;
  padding-top:0;
}
.now-block-wrap--compare .now-block-compare__card--calendar .compare-calendar__edit{
  border:none;
  background:transparent;
  color:rgba(0,0,0,0.55);
  font-size:16px;
  padding:4px 6px;
  border-radius:8px;
  cursor:pointer;
}
.now-block-wrap--compare .now-block-compare__card--calendar .compare-calendar__edit:hover{
  background:rgba(0,0,0,0.04);
}
.now-block-wrap--compare .now-block-compare__card--calendar .compare-calendar__delete{
  border:none;
  background:transparent;
  color:rgba(0,0,0,0.55);
  font-size:16px;
  width:30px;
  height:30px;
  border-radius:10px;
  cursor:pointer;
}
.now-block-wrap--compare .now-block-compare__card--calendar .compare-calendar__delete:hover{
  background:rgba(0,0,0,0.04);
  color:rgba(0,0,0,0.72);
}
.now-block-wrap--compare .now-block-compare__card--calendar .compare-calendar__details{
  grid-column:2 / -1;
  padding:10px 0 2px;
}
.now-block-wrap--compare .now-block-compare__card--calendar .compare-calendar__info-line--full.is-empty{
  color:rgba(0,0,0,0.38);
}
.now-block-wrap--compare .now-block-compare__card--calendar .compare-calendar__edit-form{
  margin-top:10px;
  display:grid;
  grid-template-columns:150px 1fr;
  gap:10px;
}
.now-block-wrap--compare .now-block-compare__card--calendar .compare-calendar__edit-form input{
  height:40px;
}
.now-block-wrap--compare .now-block-compare__card--calendar .compare-calendar__edit-actions{
  grid-column:1 / -1;
  display:flex;
  gap:10px;
  justify-content:flex-start;
}
.now-block-wrap--compare .now-block-compare__card--calendar .compare-calendar__save,
.now-block-wrap--compare .now-block-compare__card--calendar .compare-calendar__cancel{
  height:38px;
  padding:0 14px;
  border-radius:10px;
  border:1px solid var(--block-border-panel);
  background:#fff;
  color:rgba(0,0,0,0.72);
  cursor:pointer;
}
.now-block-wrap--compare .now-block-compare__card--calendar .compare-calendar__cancel{
  color:rgba(0,0,0,0.55);
}
.now-block-wrap--compare .now-block-compare__card--calendar .compare-calendar__save:hover,
.now-block-wrap--compare .now-block-compare__card--calendar .compare-calendar__cancel:hover{
  background:rgba(0,0,0,0.03);
}
.now-block-wrap--compare .now-block-compare__card--calendar .compare-calendar__list{
  background:transparent;
  border-radius:14px;
  padding:0 28px 18px;
  box-sizing:border-box;
  color:rgba(0,0,0,0.72);
}
.now-block-wrap--compare .now-block-compare__card--calendar .compare-calendar__empty{
  padding:18px 0 10px;
  color:rgba(0,0,0,0.42);
}

.compare-events-today{
  display:flex;
  flex-direction:column;
  gap:8px;
  margin-top:0;
}
.compare-events-today__row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  min-height:30px;
  padding:0;
  border-bottom:1px solid rgba(0,0,0,0.10);
}
.compare-events-today__row:last-child{
  border-bottom:none;
}
.compare-events-today__text{
  flex:1;
  min-width:0;
  font-size:15px;
  line-height:1.4;
  color:rgba(51,54,63,0.82);
}
.compare-events-today__text strong{
  font-weight:600;
}

/* Кликабельная строка (редактирование) */
.compare-events-today__row-trigger{
  flex:1;
  min-width:0;
  display:flex;
  align-items:center;
  gap:8px;
  padding:0;
  border:none;
  background:transparent;
  cursor:pointer;
  text-align:left;
  font:inherit;
  color:inherit;
}
.compare-events-today__row-trigger .compare-events-today__text{
  /* В «Важно» слева есть круг (20px) + gap (8px). Компенсируем для выравнивания текста. */
  padding-left:28px;
}
.compare-events-today__row-trigger:focus{
  outline:none;
}
.compare-events-today__row-trigger:focus-visible{
  box-shadow:0 0 0 2px rgba(0,0,0,0.08);
  border-radius:8px;
}
.compare-events-today__row.is-open{
  padding-bottom:6px;
}
.compare-events-today__title-line{
  display:block;
}
.compare-events-today__info-line{
  display:block;
  margin-top:2px;
  font-size:14px;
  line-height:1.35;
  color:rgba(51,54,63,0.65);
  word-break:break-word;
}
.compare-events-today__row-trigger:hover{
  color:rgba(51,54,63,0.9);
}

/* Плюсик внизу — как в «Что происходит» */
.compare-events-today__add{
  display:flex;
  align-items:center;
  gap:8px;
  min-height:30px;
  padding:0;
  margin-top:8px;
}
.compare-events-today__add-btn{
  width:20px;
  height:20px;
  border-radius:50%;
  border:1px solid rgba(51,54,63,0.38);
  background:transparent;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  padding:0;
}
.compare-events-today__add-btn::before,
.compare-events-today__add-btn::after{
  content:'';
  position:absolute;
  background:rgba(51,54,63,0.38);
  border-radius:1px;
}
.compare-events-today__add-btn{
  position:relative;
}
.compare-events-today__add-btn::before{ width:10px; height:1.5px; }
.compare-events-today__add-btn::after{ width:1.5px; height:10px; }

.compare-calendar{
  display:flex;
  flex-direction:column;
  gap:12px;
  margin-top:6px;
  min-height:0;
}
.compare-calendar__form{
  display:grid;
  grid-template-columns:160px 1fr 1.2fr auto;
  gap:10px;
  align-items:center;
}
.compare-calendar__form input{
  height:10px;
  padding:8px 10px;
  border:1px solid var(--block-border-panel);
  border-radius:10px;
  background:#fff;
  font:inherit;
  font-size:14px;
  box-sizing:border-box;
}
.compare-calendar__add{
  height:40px;
  padding:0 14px;
  border:none;
  border-radius:10px;
  background:linear-gradient(145deg, #29A3B1 0%, #12E195 100%);
  color:#0b0f14;
  font-weight:600;
  cursor:pointer;
}
.compare-calendar__add:hover{
  filter:brightness(0.98);
}
.compare-calendar__list{
  display:flex;
  flex-direction:column;
  min-height:0;
}
.compare-calendar__item{
  display:flex;
  gap:12px;
  align-items:flex-start;
  padding:10px 0;
  border-bottom:1px solid rgba(0,0,0,0.10);
}
.compare-calendar__item:last-child{ border-bottom:none; }
.compare-calendar__date-pill{
  flex:0 0 auto;
  font-size:13px;
  color:rgba(0,0,0,0.55);
  padding-top:2px;
  width:110px;
}
.compare-calendar__body{
  flex:1;
  min-width:0;
}
.compare-calendar__title-line{
  font-size:15px;
  font-weight:600;
  color:rgba(0,0,0,0.78);
}
.compare-calendar__info-line{
  margin-top:2px;
  font-size:14px;
  line-height:1.35;
  color:rgba(0,0,0,0.65);
  word-break:break-word;
}
.compare-calendar__delete{
  border:none;
  background:transparent;
  padding:4px;
  cursor:pointer;
  color:rgba(0,0,0,0.35);
}
.compare-calendar__delete:hover{
  color:rgba(0,0,0,0.6);
}

@media (max-width: 1024px){
  .now-block-compare__lower-grid{
    grid-template-columns:1fr;
  }
  .now-block-compare__lower-grid{
    justify-items:stretch;
  }
  .now-block-wrap--compare .now-block-compare__card.now-block-compare__card--calendar{
    width:100%;
  }
  .now-block-wrap--compare .now-block-compare__card--calendar .compare-calendar__date{
    flex:1 1 180px;
  }
}
/* Левая колонка: стек карточек */
.now-block-compare__aside-column{
  display:flex;
  flex-direction:column;
  gap:20px;
  min-width:0;
}
.now-block-compare__card{
  background:#F8F8F8;
  border-radius:16px;
  border:1px solid var(--block-border-panel);
  box-shadow:0 1px 3px rgba(0,0,0,0.04);
  padding:18px 18px;
  box-sizing:border-box;
}
.now-block-compare__card-title{
  margin:0 0 12px 0;
  font-size:15px;
  font-weight:600;
  color:#33363F;
}
/* Левая карточка «Важно сегодня»: фон. На ≥901px высота фиксируется в @media — --compare-mid-max-px на .now-block-wrap--compare. */
.now-block-compare__card--important{
  background:#F8F8F8;
  border:1px solid var(--block-border-panel);
  box-shadow:none;
  padding:22px 28px 28px;
  display:flex;
  flex-direction:column;
  min-height:0;
}
/* Заголовок «Важно сегодня» внутри левой карточки */
.now-block-compare__card--important .compare-important__heading{
  margin:0 0 20px 0;
  font-size:22px;
  font-weight:500;
  letter-spacing:0.02em;
  color:rgba(0,0,0,0.72);
}
/* Тот же шаг, что и gap между строками задач (8px) — между списком и «Добавить задачу» */
.now-block-compare__card--important .compare-important{
  gap:8px;
}
/* Пусто: «+» под заголовком (order -1). Есть задачи: список, затем строка «Добавить» (order 1) */
.now-block-compare__card--important .compare-important__composer{
  margin-top:0;
}
.now-block-compare__card--important .compare-important__composer--empty{
  order:-1;
}
.now-block-compare__card--important .compare-important__composer--add{
  order:1;
}
.now-block-compare__card--important .compare-important:has(.compare-important__composer--add){
  overflow-y:auto;
  -webkit-overflow-scrolling:touch;
}
.now-block-compare__card--important .compare-important__items{
  scrollbar-gutter:stable;
  gap:8px !important;
}
/* С задачами список по высоте контента — «Добавить» сразу под последним пунктом, не внизу карточки */
.now-block-compare__card--important .compare-important:has(.compare-important__composer--add) .compare-important__items{
  flex:0 1 auto;
  flex-grow:0;
  min-height:0;
  overflow-y:auto;
  max-height:none;
}
/* Строки задач визуально как строка «Добавить задачу»: те же высота, шрифт, круг слева */
.now-block-compare__card--important .compare-important__item-row{
  align-items:center;
  gap:8px;
  min-height:30px;
  padding:0;
  box-sizing:border-box;
  font-size:15px;
  line-height:1.4;
}

/* Отступ до строки «Добавить» задаётся gap на .compare-important, не margin-bottom здесь */
.now-block-compare__card--important .compare-important__items{
  margin-bottom:0;
}
.now-block-compare__card--important .compare-important__item-row:not(.compare-important__item-row--completed){
  color:rgba(51,54,63,0.82);
}
.now-block-compare__card--important .compare-important__text{
  font-size:15px;
  line-height:1.4;
}
.now-block-compare__card--important .compare-important__item-row:not(.compare-important__item-row--completed) .compare-important__text{
  color:rgba(51,54,63,0.82);
}
.now-block-compare__card--important .compare-important__item-row--completed,
.now-block-compare__card--important .compare-important__item-row--completed .compare-important__text{
  color:rgba(51,54,63,0.45);
}
.now-block-compare__card--important .compare-important__delete{
  align-self:center;
}
.now-block-compare__card--important .compare-important__marker--checkbox{
  width:20px;
  height:20px;
  min-width:20px;
  min-height:20px;
  margin-top:0;
  flex-shrink:0;
  align-self:center;
  border-width:1px;
  border-style:solid;
  border-color:rgba(51,54,63,0.38);
  border-radius:50%;
  box-sizing:border-box;
}
.now-block-compare__card--important .compare-important__marker--checkbox-done{
  width:20px;
  height:20px;
  min-width:20px;
  min-height:20px;
  border:none;
  border-radius:50%;
}
.now-block-compare__card--important .compare-important__item-input{
  font-size:15px;
  line-height:1.4;
  color:rgba(51,54,63,0.82);
  min-height:0;
  align-self:center;
}
/* Compare-режим: строка «Добавить задачу» должна совпадать с остальными строками */
.now-block-compare__card--important .compare-important__placeholder,
.now-block-compare__card--important .compare-important__input{
  font-size:15px;
  line-height:1.4;
}
.now-block-compare__card--important .compare-important__marker--plus{
  border-radius:50%;
  border-color:rgba(51,54,63,0.38);
}
.now-block-compare__card--important .compare-important__marker--plus::before,
.now-block-compare__card--important .compare-important__marker--plus::after{
  background:rgba(51,54,63,0.38);
}
/* Одна вертикальная сетка: строки задач и «Добавить задачу» */
.now-block-compare__card--important .compare-important__composer{
  align-items:center;
  gap:8px;
  padding-top:0;
  padding-bottom:0;
  min-height:30px;
}
.now-block-compare__card--important .compare-important__composer-trigger{
  gap:8px;
  min-height:30px;
}
.now-block-compare__card--important .compare-important__composer.is-editing .compare-important__composer-trigger{
  min-height:30px;
}
.now-block-compare__card--important .compare-important__composer.is-editing .compare-important__input{
  min-height:30px;
}
.now-block-compare__card--important .compare-important__composer--add,
.now-block-compare__card--important .compare-important__composer--empty{
  padding-top:0;
  padding-bottom:0;
  min-height:30px;
}
/* Тело блока заметок: список + строка ввода внизу */
.compare-important{
  flex:1;
  display:flex;
  flex-direction:column;
  min-height:0;
}
.compare-important__items{
  display:flex;
  flex-direction:column;
  gap:10px;
  margin-bottom:6px;
}
.compare-important__item-row{
  display:flex;
  align-items:flex-start;
  gap:10px;
  padding:2px 0;
  line-height:1.45;
  font-size:15px;
  color:rgba(51,54,63,0.78);
}
.compare-important__text{
  flex:1;
  min-width:0;
  word-break:break-word;
}
.compare-important__delete{
  flex-shrink:0;
  margin:0;
  padding:0 2px;
  border:none;
  background:transparent;
  font:inherit;
  font-size:15px;
  line-height:1;
  color:rgba(51,54,63,0.22);
  cursor:pointer;
  opacity:0;
  transition:opacity 0.15s ease, color 0.15s ease;
}
.compare-important__item-row:hover .compare-important__delete{
  opacity:1;
}
.compare-important__delete:hover{
  color:rgba(51,54,63,0.45);
}
.compare-important__marker{
  flex-shrink:0;
  width:18px;
  height:18px;
  margin-top:3px;
  border-radius:50%;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-size:15px;
  font-weight:400;
  line-height:1;
  box-sizing:border-box;
}
.compare-important__marker--plus{
  position:relative;
  width:20px;
  height:20px;
  margin-top:0;
  flex-shrink:0;
  align-self:center;
  font-size:0;
  line-height:0;
  overflow:visible;
  background:transparent;
  border:1px solid rgba(0,0,0,0.1);
  color:transparent;
}
.compare-important__marker--plus::before,
.compare-important__marker--plus::after{
  content:'';
  position:absolute;
  left:50%;
  top:50%;
  background:rgba(51,54,63,0.38);
  border-radius:1px;
  transform:translate(-50%,-50%);
}
.compare-important__marker--plus::before{
  width:12px;
  height:1.5px;
}
.compare-important__marker--plus::after{
  width:1.5px;
  height:12px;
}
.compare-important__marker--dot{
  margin-top:7px;
  width:7px;
  height:7px;
  border:none;
  background:rgba(51,54,63,0.22);
}
.compare-important__marker--checkbox{
  margin-top:3px;
  width:18px;
  height:18px;
  padding:0;
  border:2px solid rgba(51,54,63,0.35);
  background:transparent;
  cursor:pointer;
  color:transparent;
  font-size:0;
  line-height:0;
}
.compare-important__marker--checkbox-done{
  border:none;
  background:linear-gradient(145deg, #29A3B1 0%, #12E195 100%);
}
.compare-important__item-row--completed .compare-important__text{
  text-decoration:line-through;
  color:rgba(51,54,63,0.45);
}
.compare-important__text--editable{
  cursor:pointer;
  border-radius:4px;
}
.compare-important__text--editable:hover{
  background:rgba(0,0,0,0.04);
}
.compare-important__item-input{
  flex:1;
  min-width:0;
  margin:0;
  padding:0;
  border:none;
  background:transparent;
  font:inherit;
  font-size:15px;
  line-height:1.45;
  color:rgba(51,54,63,0.92);
  box-shadow:none;
  border-radius:0;
  -webkit-appearance:none;
  appearance:none;
}
.compare-important__item-input:focus{
  outline:none;
}
.compare-important__composer{
  display:flex;
  align-items:stretch;
  gap:12px;
  margin-top:auto;
  padding-top:8px;
  padding-bottom:2px;
  cursor:default;
  outline:none;
  border-radius:8px;
  flex-shrink:0;
  min-height:36px;
  width:100%;
  box-sizing:border-box;
  position:relative;
  z-index:1;
}
.compare-important__composer:not(.is-editing) .compare-important__input{
  pointer-events:none;
}
.compare-important__composer.is-editing:not(.is-disabled){
  cursor:text;
}
.compare-important__composer-trigger{
  display:inline-flex;
  align-items:center;
  justify-content:flex-start;
  gap:12px;
  flex:1;
  min-width:0;
  min-height:36px;
  margin:0;
  padding:0;
  border:none;
  background:transparent;
  font:inherit;
  color:inherit;
  text-align:left;
  cursor:pointer;
  border-radius:8px;
  box-sizing:border-box;
  -webkit-appearance:none;
  appearance:none;
}
.compare-important__composer-trigger:focus{
  outline:none;
}
.compare-important__composer-trigger:focus-visible{
  box-shadow:0 0 0 2px rgba(0,0,0,0.08);
}
.compare-important__composer-trigger .compare-important__placeholder{
  flex:1;
  min-width:0;
  text-align:left;
}
/* В режиме ввода круг с «+» слева; та же высота строки, что и у кнопки с плейсхолдером — без сдвига layout */
.compare-important__composer.is-editing .compare-important__composer-trigger{
  flex:0 0 auto;
  align-self:stretch;
  min-width:0;
  min-height:36px;
  cursor:default;
}
.compare-important__composer.is-editing .compare-important__composer-trigger:focus-visible{
  box-shadow:none;
}
.compare-important__composer--empty{
  margin-top:0;
  padding-top:10px;
  padding-bottom:10px;
  min-height:44px;
}
.compare-important:has(.compare-important__composer--empty) .compare-important__items{
  flex:0 1 auto;
  min-height:0;
}
.compare-important__composer--add{
  margin-top:0;
  padding-top:10px;
  padding-bottom:10px;
  border-top:none;
  border-bottom:none;
}
.compare-important__placeholder{
  font-size:18px;
  line-height:1.4;
  color:rgba(51,54,63,0.32);
  pointer-events:none;
  user-select:none;
}
.compare-important__composer.is-editing .compare-important__placeholder{
  display:none;
}
.compare-important__input{
  display:none;
  width:100%;
  margin:0;
  padding:0;
  border:none;
  background:transparent;
  font:inherit;
  font-size:18px;
  line-height:1.4;
  color:rgba(51,54,63,0.82);
  box-shadow:none;
  border-radius:0;
  -webkit-appearance:none;
  appearance:none;
}
.compare-important__input:focus{
  outline:none;
}
.compare-important__composer.is-editing .compare-important__input{
  display:block;
  flex:1;
  min-width:0;
  min-height:36px;
  align-self:stretch;
  box-sizing:border-box;
}
.now-block-compare__card--important .compare-important__composer.is-disabled{
  cursor:default;
  pointer-events:none;
}
.now-block-compare__card--important .compare-important__composer.is-disabled .compare-important__placeholder{
  color:rgba(51,54,63,0.18);
}
/* Пустая плейсхолдер-карточка под «Важно» (на ≥901px тянется по высоте строки с виджетами справа) */
.now-block-compare__card--placeholder{
  min-height:120px;
  background:rgba(0,0,0,0.02);
  border:1px dashed var(--block-border-panel);
  box-sizing:border-box;
}
/* «Мероприятия сегодня» (layout-compare) удалены */
/* Табы «Что происходит» / «Чем занята команда» — правая колонка */
.now-block-compare__card--tabs{
  padding:22px 28px 28px;
  background:#F8F8F8;
  border:1px solid var(--block-border-muted);
  box-shadow:none;
}
/* Базовый .tasks-board даёт #FAFAFA — перекрывает фон карточки */
.now-block-compare__card--tabs .tasks-board{
  margin:0 !important;
  margin-bottom:0 !important;
  border:none;
  border-radius:0;
  padding:0;
  background:#F8F8F8 !important;
}
.app--layout-compare-wrap .now-block-compare__card--tabs .tasks-board{
  background:transparent !important;
}
/* Правая колонка: табы */
.now-block-compare__main{
  display:flex;
  flex-direction:column;
  gap:16px;
  min-width:0;
}
/* Четыре квадратных плейсхолдера под диаграммой */
.now-block-compare__widgets{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:12px;
}
.app--layout-compare-wrap .now-block-compare__widgets{
  display:none;
}
/*
 * Широкий экран (layout-compare): «Важно» и табы в одной высоте (две строки сетки), без диаграммы.
 */
@media (min-width:901px){
  .now-block-compare__grid{
    /* Не растягиваем верхние 2 строки на свободное место — иначе календарь уезжает вниз */
    grid-template-rows:minmax(calc(320px * 0.9), auto) auto;
  }
  .now-block-compare__main{
    display:contents;
  }
  .now-block-compare__aside-column{
    grid-column:1;
    grid-row:1 / 3;
    align-self:start;
    box-sizing:border-box;
    min-width:0;
    overflow:visible;
  }
  /* «Важно»: прежние размеры карточки (не делим высоту с «Мероприятиями») */
  .now-block-compare__card--important{
    flex:0 0 auto;
    box-sizing:border-box;
    height:var(--compare-mid-max-px, 558px);
    min-height:var(--compare-mid-max-px, 558px);
    max-height:var(--compare-mid-max-px, 558px);
    overflow:hidden;
    align-self:start;
    width:100%;
  }
  .now-block-compare__card--placeholder{
    grid-column:1;
    grid-row:3;
    align-self:stretch;
    min-height:120px;
    height:auto;
  }
  .now-block-compare__card--tabs{
    grid-column:2;
    grid-row:1 / 3;
    /* Совпадает с высотой карточки «Важно» слева */
    height:var(--compare-mid-max-px, 558px);
    min-height:var(--compare-mid-max-px, 558px);
    max-height:var(--compare-mid-max-px, 558px);
    box-sizing:border-box;
    display:flex;
    flex-direction:column;
    align-self:start;
    overflow:hidden;
    /* Без нижнего padding оболочки: иначе «Мероприятия» визуально выше низа «Важно» */
    padding-bottom:0;
  }
  /* «Что происходит»: без клиппинга и без прокрутки, 2 ряда стикеров */
  .app--layout-compare-wrap .now-block-compare__card--tabs:has(#panelWhatsHappening.tasks-board__panel.active){
    overflow:visible !important;
  }
  .app--layout-compare-wrap .now-block-compare__card--tabs .tasks-board:has(#panelWhatsHappening.tasks-board__panel.active){
    overflow:visible !important;
  }
  .app--layout-compare-wrap .now-block-compare__card--tabs .tasks-board__content:has(#panelWhatsHappening.tasks-board__panel.active){
    overflow:visible !important;
  }
  .app--layout-compare-wrap .now-block-compare__card--tabs #panelWhatsHappening.tasks-board__panel.active{
    overflow:visible !important;
  }
  .app--layout-compare-wrap .now-block-compare__card--tabs #panelWhatsHappening.tasks-board__panel.active .office-board{
    overflow:visible !important;
  }
  .now-block-compare__widgets{
    grid-column:2;
    grid-row:3;
    align-self:stretch;
    min-height:0;
  }
  .now-block-compare__card--important .compare-important__items{
    flex:1;
    min-height:0;
    overflow-y:auto;
    margin-bottom:0;
  }
  .now-block-compare__card--important .compare-important:has(.compare-important__composer--empty) .compare-important__items{
    flex:0 1 auto;
    overflow:visible;
    max-height:none;
  }
  .now-block-compare__card--important .compare-important:has(.compare-important__composer--add) .compare-important__items{
    flex:0 1 auto;
    flex-grow:0;
    min-height:0;
    overflow-y:auto;
    max-height:none;
  }
  .now-block-compare__card--tabs .tasks-board{
    display:flex;
    flex-direction:column;
    flex:1 1 0;
    min-height:0;
    height:100%;
    max-height:100%;
    overflow:hidden;
  }
  .now-block-compare__card--tabs .tasks-board__tabs{
    flex-shrink:0;
  }
  .now-block-compare__card--tabs .tasks-board__content{
    flex:1 1 0;
    min-height:0 !important;
    max-height:100%;
    overflow:hidden;
    display:flex;
    flex-direction:column;
  }
  .now-block-compare__card--tabs .tasks-board__panel.active{
    display:flex !important;
    flex-direction:column;
    /* Панель занимает всё доступное место над «Мероприятиями» */
    flex:1 1 0;
    min-height:0;
    max-height:100%;
    overflow:auto;
  }
  .now-block-compare__card--tabs .tasks-board__panel.active .office-board{
    display:flex !important;
    flex-direction:column !important;
    flex:1 1 0;
    min-height:0;
    max-height:100%;
    overflow:hidden;
  }
  .now-block-compare__card--tabs .tasks-board__panel.active .office-board__content{
    flex:1 1 auto !important;
    min-height:0 !important;
    max-height:100%;
    overflow-y:visible !important;
    overflow-x:visible !important;
  }
  .now-block-compare__card--tabs .tasks-board__panel.active #contentTeamBusy{
    flex:1 1 0;
    min-height:0;
    max-height:100%;
    overflow-y:auto;
    overflow-x:hidden;
  }
  .now-block-compare__card--tabs #contentTeamBusy .team-busy-sections{
    min-height:0;
  }
  /* «Мероприятия сегодня» под стикерами (только .tasks-board--layout-compare) */
  .app--layout-compare-wrap .now-block-compare__card--tabs .tasks-board--layout-compare:has(#panelWhatsHappening.tasks-board__panel.active){
    /* Стикеры масштабируются и чуть "выезжают" по бокам — не клиппим по X */
    overflow-x:hidden !important;
    /* По Y не клиппим: иначе режется верх при scale(...) */
    overflow-y:visible !important;
  }
  .app--layout-compare-wrap .now-block-compare__card--tabs .tasks-board--layout-compare .tasks-board__content:has(#panelWhatsHappening.tasks-board__panel.active){
    overflow-x:hidden !important;
    overflow-y:visible !important;
    /* Небольшой верхний запас под scale(...) чтобы не упираться в границу контента */
    padding-top:var(--compare-sticker-overscan);
  }
  .app--layout-compare-wrap .now-block-compare__card--tabs:has(.tasks-board--layout-compare #panelWhatsHappening.tasks-board__panel.active){
    overflow-x:hidden !important;
    overflow-y:hidden !important;
  }
  /* В compare-режиме делаем общий вертикальный ритм: панель сверху, «Мероприятия» всегда внизу */
  .app--layout-compare-wrap .now-block-compare__card--tabs .tasks-board--layout-compare .tasks-board__content{
    gap:32px;
  }
  .app--layout-compare-wrap .now-block-compare__card--tabs .tasks-board--layout-compare #panelWhatsHappening.tasks-board__panel.active .office-board{
    /* Даем стикерам "полосу" и центрируем их по вертикали */
    flex:0 0 auto !important;
    min-height:clamp(calc(220px * 0.9), 21.6vh, calc(300px * 0.9)) !important;
    max-height:none !important;
    overflow:visible !important;
    display:flex !important;
    flex-direction:column !important;
    justify-content:center !important;
  }
  /* Блок «Мероприятия сегодня» удалён из layout-compare */
}
.now-block-compare__widget-slot{
  aspect-ratio:1;
  border:2px dashed var(--block-border-dashed);
  border-radius:12px;
  background:rgba(0,0,0,0.02);
}
.now-block__live-notes--in-card{
  margin:0;
}

/* Узкий экран: колонки друг под другом */
@media (max-width:900px){
  .now-block-compare__grid{
    grid-template-columns:1fr;
    grid-template-rows:none;
    min-height:0;
  }
  .now-block-compare__aside-column{
    grid-column:auto;
    grid-row:auto;
    height:auto !important;
    max-height:none !important;
    overflow:visible;
  }
  .now-block-compare__aside-column .now-block-compare__card--important{
    flex:0 1 auto;
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
  }
  .now-block-compare__card--important,
  .now-block-compare__card--placeholder,
  .now-block-compare__card--tabs,
  .now-block-compare__widgets{
    grid-column:auto;
    grid-row:auto;
  }
  .now-block-compare__widgets{
    grid-template-columns:repeat(2,1fr);
  }
}
