/* Лаконичный layout: одна подложка, один цвет карточек, равные зазоры,
   заголовок слева / фильтры справа внутри карточки, без вложенных рамок */

:root{
  --laconic-gap:var(--gap-cards,16px);
  --laconic-card-bg:var(--card-bg,var(--panel));
  --v2-capital-radius:10px;
  --laconic-radius:var(--v2-capital-radius);
  /* Сайдбар: три карточки одной ширины; эталон ширины — aside.sidebar (см. .cursor/rules/laconic-sidebar-column.mdc) */
  --sidebar-nav-link-h:44px;
  --sidebar-brand-pad-x:10px;
  --sidebar-foot-pad:12px 14px;
  /* KPI: 7 карточек в один ряд; СЧА — первая колонка шире */
  --pf-kpi-grid-cols-7:minmax(0,2fr) repeat(6,minmax(0,0.68fr));
  /* Капитал: СЧА + дата + P/L + Δ + позиции + обновить (квадрат) */
  --pf-kpi-reload-size:var(--lop-card-min-h,52px);
  --pf-kpi-grid-cols-capital:minmax(0,1.4fr) minmax(0,0.9fr) repeat(3,minmax(0,0.78fr)) var(--pf-kpi-reload-size);
  /* Фильтры: источники | счета | классы */
  --v2-pf-filters-cols:minmax(0,0.72fr) minmax(0,2.1fr) minmax(0,1.05fr);
}

/* ── Оболочка ───────────────────────────────────────────────────── */
.app-shell{
  width:100%;
  max-width:100%;
  min-width:0;
  gap:var(--laconic-gap);
  padding:var(--laconic-gap);
  background:var(--bg);
  align-items:start;
  box-sizing:border-box;
  overflow-x:hidden;
}
/* ── СТАНДАРТ: колонка сайдбара (логотип | меню | статус) — не менять пропорции без согласования ── */
.app-shell > .sidebar-column{
  align-self:start;
  height:fit-content;
  max-height:none;
  margin-top:0;
  padding-top:0;
}
.sidebar-column{
  display:inline-grid;
  grid-template-columns:max-content;
  grid-auto-flow:row;
  grid-template-rows:auto;
  justify-items:stretch;
  align-content:start;
  align-items:start;
  gap:var(--laconic-gap);
  align-self:start;
  width:max-content;
  max-width:100%;
  min-width:0;
  box-sizing:border-box;
  position:sticky;
  top:0;
  height:fit-content;
  min-height:0;
  max-height:calc(100vh - 2 * var(--laconic-gap));
  z-index:1400;
}
/* Ширину колонки задаёт только .sidebar; логотип и статус подстраиваются под неё */
.sidebar-column > .sidebar-brand-card,
.sidebar-column > .sidebar-foot-card{
  grid-column:1;
  width:0;
  min-width:100%;
  max-width:100%;
  box-sizing:border-box;
  overflow:hidden;
}
.sidebar-column > .sidebar{
  grid-column:1;
  width:max-content;
  max-width:100%;
  min-width:0;
  box-sizing:border-box;
}
.sidebar-brand-card{
  grid-row:1;
  align-self:start;
  margin-top:0;
  flex:0 0 var(--lop-card-min-h);
  box-sizing:border-box;
  height:var(--lop-card-min-h);
  min-height:var(--lop-card-min-h);
  max-height:var(--lop-card-min-h);
  display:flex;
  align-items:center;
  justify-content:center;
  padding:0 var(--sidebar-brand-pad-x);
  border-radius:var(--laconic-radius);
  background:var(--laconic-card-bg);
  border:none;
  box-shadow:none;
  overflow:hidden;
  cursor:default;
}
.sidebar-brand-card .brand-wrap{
  margin:0 auto;
  width:auto;
  display:flex;
  justify-content:center;
}
/* app.css: .brand-wrap { margin-bottom:14px } — только внутри сайдбара без отступа */
.sidebar-brand-card .brand-wrap,
.sidebar-brand-card .brand-block{
  margin:0;
}
.sidebar-brand-card .brand-block{
  min-height:32px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  text-align:center;
}
.sidebar-brand-card .brand-title{
  min-height:32px;
  max-height:32px;
  align-items:center;
  justify-content:center;
  line-height:1;
}
.sidebar-foot-card{
  margin-top:0;
  box-sizing:border-box;
  display:none;
  padding:var(--sidebar-foot-pad);
  border-radius:var(--laconic-radius);
  background:var(--laconic-card-bg);
  border:none;
  box-shadow:none;
}
.sidebar-foot-card__label{
  font-size:11px;
  font-weight:600;
  color:var(--muted);
  text-transform:uppercase;
  letter-spacing:0.05em;
  margin:0 0 6px;
  line-height:1.2;
}
.sidebar-foot-card__build,
.sidebar-foot-card__note,
.sidebar-foot-card__greeting{
  margin:0;
  font-size:12px;
  line-height:1.35;
  color:var(--muted);
  overflow-wrap:anywhere;
  word-break:break-word;
}
.sidebar-foot-card__build{margin-bottom:4px}
.sidebar-foot-card__greeting{margin-bottom:4px}
.sidebar-foot-card__greeting:not([style*="display: none"]):not([style*="display:none"]){
  display:block!important;
}
.app-shell.sidebar--expanded .sidebar-foot-card{
  display:block;
  margin-top:auto;
}
.sidebar{
  border:none;
  border-radius:var(--laconic-radius);
  background:var(--laconic-card-bg);
  box-shadow:none;
  padding:var(--laconic-gap) 10px;
  overflow:visible;
}
.brand-wrap{margin-top:0}
.content{
  background:transparent;
  border:none;
  box-shadow:none;
  padding:0;
  margin:0;
  min-width:0;
  max-width:100%;
  width:100%;
  align-self:stretch;
  box-sizing:border-box;
  container-type:inline-size;
  container-name:app-main;
}
/* Главная и портфель: первая карточка вровень с верхом сайдбара */
#tab-summary:checked ~ .app-shell .content > .page-summary,
#tab-portfolio:checked ~ .app-shell .content > .page-portfolio{
  margin-top:0;
  padding-top:0;
}
#tab-portfolio:checked ~ .app-shell .content > .page-portfolio{
  display:flex;
  flex-direction:column;
  gap:var(--laconic-gap);
  min-width:0;
  max-width:100%;
  width:100%;
  box-sizing:border-box;
}
#tab-summary:checked ~ .app-shell .content > .page-summary.page-summary--dashboard{
  display:flex;
  flex-direction:column;
  gap:var(--v2-capital-gap,var(--laconic-gap,var(--gap-cards,16px)));
  min-width:0;
  max-width:100%;
  width:100%;
  box-sizing:border-box;
}
#tab-summary:checked ~ .app-shell .content > .page-summary:not(.page-summary--dashboard){
  display:flex;
  flex-direction:column;
  gap:var(--laconic-gap);
  min-width:0;
  max-width:100%;
  width:100%;
  box-sizing:border-box;
}
#tab-summary:checked ~ .app-shell .content > .page-summary > .card:first-child,
#tab-summary:checked ~ .app-shell .content > .page-summary > section.card:first-child,
#tab-summary:checked ~ .app-shell .content > .page-summary > .v2-dash-hero:first-child,
#tab-portfolio:checked ~ .app-shell .content > .page-portfolio > .card:first-child,
#tab-portfolio:checked ~ .app-shell .content > .page-portfolio > .v2-pf-hero:first-child{
  margin-top:0;
}
.content > .page{margin-top:0}
.page.page-portfolio,
.page.page-settings,
.page.page-admin,
.page.page-account,
.page.page-changelog{
  margin-top:0;
}
.page > .topbar{
  margin:0 0 var(--laconic-gap);
  padding:0;
}
.page > .topbar .page-subtitle{
  font-size:15px;
  font-weight:600;
  line-height:1.25;
}
.page > .topbar .page-title{
  margin-bottom:2px;
}
/* Staff / кабинет: верх страницы = верх «карточки», вровень с сайдбаром */
.page-settings > .topbar,
.page-admin > .topbar,
.page-account > .topbar{
  margin:0;
  padding:var(--laconic-gap);
  background:var(--laconic-card-bg);
  border-radius:var(--laconic-radius) var(--laconic-radius) 0 0;
}
.page-settings > .topbar + .card,
.page-admin > .topbar + .v2-admin-shell{
  margin-top:0;
}
.page-settings > .topbar + .card{
  padding-top:12px;
  border-radius:0 0 var(--laconic-radius) var(--laconic-radius);
}
.page-admin > .topbar + .v2-admin-shell{
  padding:0 var(--laconic-gap) var(--laconic-gap);
  background:var(--laconic-card-bg);
  border-radius:0 0 var(--laconic-radius) var(--laconic-radius);
}
.page-account > .account-shell{
  margin-top:0;
  padding:var(--laconic-gap);
  background:var(--laconic-card-bg);
  border-radius:0 0 var(--laconic-radius) var(--laconic-radius);
}
html.theme-dark .page-settings > .topbar,
html.theme-dark .page-admin > .topbar,
html.theme-dark .page-admin > .topbar + .v2-admin-shell,
html.theme-dark .page-account > .topbar,
html.theme-dark .page-account > .account-shell{
  background:var(--color-twilight);
  border:none;
  box-shadow:none;
}

/* ── Карточки ───────────────────────────────────────────────────── */
.card{
  background:var(--laconic-card-bg);
  border:1px solid var(--line);
  box-shadow:none;
  border-radius:var(--laconic-radius);
  padding:var(--laconic-gap);
}
/* Заголовки карточек — единый капс, верх-слева, короткие подписи */
:root{
  --card-cap-size:11px;
  --card-cap-weight:600;
  --card-cap-tracking:0.09em;
  --card-cap-color:var(--muted);
}
.card .card-title,
.v2-anl-card-title,
.card > .card-title{
  border-left:none;
  padding:0;
  margin:0;
  font:inherit;
  font-size:var(--card-cap-size);
  font-weight:var(--card-cap-weight);
  letter-spacing:var(--card-cap-tracking);
  line-height:1.25;
  text-transform:uppercase;
  color:var(--card-cap-color);
  text-align:left;
}
html.theme-dark .card .card-title,
html.theme-dark .v2-anl-card-title{
  color:var(--ivory-400);
}

/* Шапка карточки: название слева, инструменты справа */
.card-laconic-head{
  display:flex;
  align-items:flex-start;
  justify-content:flex-start;
  gap:8px 12px;
  margin:0 0 var(--laconic-gap);
  padding:0;
  flex-wrap:wrap;
  width:100%;
}
.card-laconic-head--compact{margin-bottom:var(--laconic-gap)}
.card-laconic-head--sub{
  margin-top:var(--laconic-gap);
  margin-bottom:var(--laconic-gap);
  padding-top:var(--laconic-gap);
  border-top:1px solid var(--line);
}
.card-laconic-head .card-title{
  flex:1 1 auto;
  min-width:0;
  align-self:flex-start;
}
.card > .card-header{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:8px 12px;
  margin:0 0 var(--laconic-gap);
  padding:0;
}
.card > .card-header .card-title{
  margin:0;
  flex:1 1 auto;
  text-align:left;
}
.page-portfolio.card > .card-header:first-child{
  margin-top:0;
}
.card-laconic-tools{
  flex:1 1 auto;
  min-width:0;
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:8px;
  flex-wrap:nowrap;
}

/* Страница сводки — колонка карточек (только когда вкладка «Главная» активна) */
#tab-summary:checked ~ .app-shell .page-summary.page-summary--dashboard{
  display:flex;
  flex-direction:column;
  gap:var(--v2-capital-gap,var(--laconic-gap,var(--gap-cards,16px)));
  min-width:0;
  max-width:100%;
  overflow-x:clip;
  box-sizing:border-box;
}
#tab-summary:checked ~ .app-shell .page-summary--dashboard .v2-dash-card-stack,
#tab-summary:checked ~ .app-shell .page-summary--dashboard > #v2DashFiltersBand,
#tab-summary:checked ~ .app-shell .page-summary--dashboard .v2-dash-hero{
  min-width:0;
  max-width:100%;
  box-sizing:border-box;
}
#tab-summary:checked ~ .app-shell .page-summary--dashboard > .card,
#tab-summary:checked ~ .app-shell .page-summary--dashboard > section.card,
#tab-summary:checked ~ .app-shell .page-summary--dashboard > details.card{
  margin:0;
}
#tab-summary:checked ~ .app-shell .page-summary--dashboard > .v2-dash-card-stack,
#tab-summary:checked ~ .app-shell .page-summary--dashboard .grid-2,
#tab-summary:checked ~ .app-shell .page-summary--dashboard .grid-3,
#tab-summary:checked ~ .app-shell .page-summary--dashboard .overview-grid{
  gap:var(--v2-capital-gap,var(--laconic-gap,var(--gap-cards,16px)));
}
.v2-alfa-section-title:not(.card-title){
  display:none;
}

/* KPI-герой главной — отдельные карточки в ряд, как портфель */
.page-summary--dashboard{
  --pf-kpi-orange:var(--orange,var(--accent,#ff9933));
  --pf-kpi-orange-bright:var(--orange-bright,var(--accent-2,#ffad52));
  --pf-kpi-orange-fill:linear-gradient(180deg,var(--pf-kpi-orange-bright) 0%,var(--pf-kpi-orange) 100%);
  --pf-kpi-green-fill:var(--good-fill-gradient,linear-gradient(180deg,#76c77a 0%,#5cb860 100%));
  --pf-kpi-green-glow:var(--good-glow,rgba(92,184,96,.32));
  --pf-kpi-blue:var(--nav,#5d99c6);
  --pf-kpi-blue-dim:var(--nav,#5d99c6);
  --pf-kpi-count-w:96px;
  --pf-kpi-widgets-w:124px;
}
.page-summary--dashboard .v2-dash-hero{
  margin:0;
  padding:0;
  height:auto;
  min-height:var(--lop-card-min-h);
  max-height:none;
  flex:0 0 auto;
  background:transparent;
  border:none;
  box-shadow:none;
  border-radius:0;
}
.page-summary--dashboard .v2-dash-hero-body{
  display:block;
  height:auto;
  min-height:var(--lop-card-min-h);
  max-height:none;
}
.page-summary--dashboard .v2-dash-hero,
.page-summary--dashboard .v2-dash-hero-body{
  position:relative;
  z-index:2;
  overflow:visible;
}
.page-summary--dashboard .v2-pf-kpi-grid--summary.v2-pf-kpi-grid--capital,
.page-summary--dashboard .v2-pf-kpi-grid--capital{
  grid-template-columns:var(--pf-kpi-grid-cols-capital);
}
.page-summary--dashboard .v2-pf-kpi-grid--scenario-overview{
  --pf-kpi-grid-cols-capital:minmax(0,1.4fr) minmax(0,0.9fr) repeat(3,minmax(0,0.78fr)) var(--pf-kpi-reload-size);
}
.page-summary--dashboard .v2-pf-kpi-grid--scenario-positions{
  --pf-kpi-grid-cols-capital:minmax(0,1.35fr) minmax(0,0.9fr) repeat(2,minmax(0,0.85fr)) var(--pf-kpi-reload-size);
}
.page-summary--dashboard .v2-pf-kpi-grid--scenario-dynamics{
  --pf-kpi-grid-cols-capital:minmax(0,1.2fr) minmax(0,0.85fr) repeat(4,minmax(0,0.72fr)) var(--pf-kpi-reload-size);
}
.page-summary--dashboard .v2-pf-kpi-grid--scenario-money{
  --pf-kpi-grid-cols-capital:minmax(0,0.76fr) minmax(0,1.1fr) repeat(4,minmax(0,0.92fr)) var(--pf-kpi-reload-size);
  --pf-kpi-grid-gap:8px;
  grid-auto-rows:var(--lop-card-min-h);
}
.page-summary--dashboard .v2-pf-kpi-grid--capital.v2-pf-kpi-grid--scenario-money > *{
  grid-row:1;
}
.page-summary--dashboard .v2-pf-kpi-grid--capital.v2-pf-kpi-grid--scenario-money .v2-kpi--reload{
  grid-column:-1;
  grid-row:1;
  align-self:stretch;
}
.page-summary--dashboard .v2-pf-kpi-grid--scenario-money .v2-kpi-value,
.page-summary--dashboard .v2-pf-kpi-grid--scenario-money .v2-kpi-label,
.page-summary--dashboard .v2-pf-kpi-grid--scenario-money .v2-slice-date-card__value,
.page-summary--dashboard .v2-pf-kpi-grid--scenario-money .v2-pf-date-picker-trigger{
  overflow:visible;
  text-overflow:clip;
}
.page-summary--dashboard .v2-pf-kpi-grid--scenario-plan{
  --pf-kpi-grid-cols-capital:minmax(0,0.9fr) repeat(3,minmax(0,0.85fr)) var(--pf-kpi-reload-size);
}
.page-summary--dashboard .v2-pf-kpi-grid--capital [data-capital-kpi][hidden]{
  display:none !important;
}
.page-summary--dashboard .v2-kpi-value--muted{
  opacity:0.45;
}
.page-summary--dashboard .v2-pf-kpi-grid--summary,
.v2-kpi-grid.v2-pf-kpi-grid,
.v2-kpi-grid.v2-pf-kpi-grid--summary{
  display:grid;
  align-items:stretch;
  grid-template-columns:var(--pf-kpi-grid-cols-7);
  grid-auto-rows:var(--lop-card-min-h);
  grid-auto-flow:row;
  gap:var(--pf-kpi-grid-gap,8px);
  width:100%;
  max-width:100%;
  min-width:0;
  margin:0;
  height:auto;
  min-height:var(--lop-card-min-h);
  max-height:none;
  overflow:visible;
  box-sizing:border-box;
}
.page-summary--dashboard .v2-dash-hero,
.page-summary--dashboard .v2-dash-hero-body{
  width:100%;
  max-width:100%;
  min-width:0;
  box-sizing:border-box;
}
.page-summary--dashboard .v2-pf-kpi-grid--summary .v2-pf-date-wheel-card{
  min-width:0;
  z-index:3;
}
/* Grid: дочерние элементы сжимаются, иначе KPI/фильтры раздувают страницу */
.v2-pf-kpi-grid > *,
.v2-pf-kpi-grid--summary > *{
  min-width:0;
  grid-row:1;
}
.v2-pf-filter-grid > *{
  min-width:0;
}
.v2-pf-kpi-grid,
.v2-pf-kpi-grid--summary{
  --pf-kpi-grid-gap:var(--laconic-gap,16px);
}
.v2-pf-kpi-grid .v2-kpi,
.v2-pf-kpi-grid--summary .v2-kpi,
.v2-pf-kpi-grid .v2-widget-layout-slot,
.v2-pf-kpi-grid--summary .v2-widget-layout-slot,
.v2-pf-kpi-grid .v2-pf-date-wheel-card,
.v2-pf-kpi-grid--summary .v2-pf-date-wheel-card{
  min-width:0;
  max-width:100%;
  width:100%;
  height:100%;
  min-height:var(--lop-card-min-h);
  align-self:stretch;
  box-sizing:border-box;
}
.v2-pf-kpi-grid .v2-kpi,
.v2-pf-kpi-grid--summary .v2-kpi{
  min-height:var(--lop-card-min-h);
}
.v2-pf-kpi-grid .v2-kpi-value,
.v2-pf-kpi-grid--summary .v2-kpi-value,
.v2-pf-kpi-grid .v2-kpi-value-row,
.v2-pf-kpi-grid--summary .v2-kpi-value-row{
  max-width:100%;
  overflow:hidden;
  text-overflow:ellipsis;
}
.v2-pf-kpi-grid .v2-kpi--nav,
.v2-pf-kpi-grid--summary .v2-kpi--nav{
  grid-column:auto;
  grid-row:1;
  min-height:var(--lop-card-min-h);
  align-self:stretch;
  padding:8px 12px;
}
.v2-pf-kpi-grid .v2-kpi-value-row--nav,
.v2-pf-kpi-grid--summary .v2-kpi-value-row--nav{
  flex-direction:row;
  flex-wrap:nowrap;
  align-items:baseline;
  column-gap:10px;
  row-gap:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.v2-pf-kpi-grid .v2-kpi--nav .v2-kpi-value--nav-main,
.v2-pf-kpi-grid--summary .v2-kpi--nav .v2-kpi-value--nav-main,
.v2-pf-kpi-grid .v2-kpi--nav .v2-kpi-value--nav-sigma,
.v2-pf-kpi-grid--summary .v2-kpi--nav .v2-kpi-value--nav-sigma{
  flex:0 1 auto;
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.v2-pf-kpi-grid .v2-kpi--metric:not(.v2-kpi--nav):not(.v2-kpi--reload),
.v2-pf-kpi-grid--summary .v2-kpi--metric:not(.v2-kpi--nav):not(.v2-kpi--reload){
  padding:8px 10px;
  gap:var(--pf-kpi-line-gap);
}
.v2-pf-kpi-grid .v2-kpi-value--nav-main,
.v2-pf-kpi-grid--summary .v2-kpi-value--nav-main,
.v2-pf-kpi-grid .v2-kpi-value--nav-sigma,
.v2-pf-kpi-grid--summary .v2-kpi-value--nav-sigma{
  cursor:help;
}
.v2-pf-kpi-grid .v2-kpi--count,
.v2-pf-kpi-grid--summary .v2-kpi--count{
  max-width:100%;
}
/* KPI: сброс min-width эталона overlay-picker (162px), иначе 7 колонок вылезают за экран */
.v2-pf-kpi-grid .laconic-overlay-picker,
.v2-pf-kpi-grid--summary .laconic-overlay-picker{
  width:100%;
  min-width:0;
  max-width:100%;
  box-sizing:border-box;
}
.v2-pf-kpi-grid .v2-pf-date-wheel-card .laconic-overlay-picker__trigger,
.v2-pf-kpi-grid .v2-pf-date-picker-trigger,
.v2-pf-kpi-grid--summary .v2-pf-date-wheel-card .laconic-overlay-picker__trigger,
.v2-pf-kpi-grid--summary .v2-pf-date-picker-trigger{
  display:block;
  width:100%;
  max-width:100%;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.v2-pf-kpi-grid .v2-kpi-reload-label,
.v2-pf-kpi-grid .v2-kpi-reload-caption,
.v2-pf-kpi-grid--summary .v2-kpi-reload-label,
.v2-pf-kpi-grid--summary .v2-kpi-reload-caption{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
/* Фильтры: источники (уже) | счета | классы (шире) */
.page-portfolio .v2-pf-filter-grid:not(.v2-wf-filter-grid),
.page-summary--dashboard .v2-pf-filter-grid:not(.v2-wf-filter-grid){
  grid-template-columns:var(--v2-pf-filters-cols);
  align-items:stretch;
}
.page-portfolio .v2-pf-filter-grid:not(.v2-wf-filter-grid){
  gap:var(--pf-kpi-grid-gap,10px);
}
.page-summary--dashboard .v2-pf-filter-grid:not(.v2-wf-filter-grid){
  gap:var(--v2-capital-gap,var(--laconic-gap,var(--gap-cards,16px)));
}
.page-portfolio .v2-pf-filter-grid:not(.v2-wf-filter-grid) .v2-pf-filter-card,
.page-summary--dashboard .v2-pf-filter-grid:not(.v2-wf-filter-grid) .v2-pf-filter-card{
  width:100%;
  min-width:0;
  max-width:100%;
  align-self:stretch;
}
.page-portfolio .v2-pf-filter-card--sources,
.page-summary--dashboard .v2-pf-filter-card--sources{
  width:100%;
  min-width:0;
  max-width:100%;
}
/* Динамика: равные колонки, перенос при нехватке места */
.page-summary--dashboard .v2-wf-filter-grid{
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:var(--v2-capital-gap,var(--laconic-gap,var(--gap-cards,16px)));
  align-items:stretch;
  width:100%;
  max-width:100%;
  min-width:0;
}
.page-summary--dashboard .v2-wf-filter-grid > .v2-wf-filter-card,
.page-summary--dashboard .v2-pf-filter-grid > .v2-pf-filter-card{
  width:100%;
  min-width:0;
  max-width:100%;
  align-self:stretch;
}
@container app-main (max-width:720px){
  .page-portfolio .v2-pf-filter-grid:not(.v2-wf-filter-grid),
  .page-summary--dashboard .v2-pf-filter-grid:not(.v2-wf-filter-grid){
    grid-template-columns:minmax(0,1fr);
  }
  .page-summary--dashboard .v2-wf-filter-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@container app-main (max-width:640px){
  .page-portfolio .v2-pf-kpi-grid,
  .page-summary--dashboard .v2-pf-kpi-grid--summary{
    grid-template-columns:var(--pf-kpi-grid-cols-7);
  }
  .page-portfolio .v2-pf-kpi-grid > *,
  .page-summary--dashboard .v2-pf-kpi-grid--summary > *{
    grid-row:1;
  }
}

/* ── Тулбар графика: без отдельной «плашки» ─────────────────────── */
.v2-wf-toolbar,
.v2-wf-toolbar--inline{
  display:flex;
  flex-wrap:nowrap;
  align-items:center;
  gap:6px 8px;
  margin:0;
  padding:0;
  background:transparent;
  border:none;
  box-shadow:none;
  overflow-x:auto;
  overflow-y:hidden;
  -webkit-overflow-scrolling:touch;
  scrollbar-width:thin;
  max-width:100%;
}
.v2-wf-toolbar > *{flex-shrink:0}
.v2-wf-toolbar-label{
  font-size:10px;
  text-transform:uppercase;
  letter-spacing:0.06em;
  opacity:0.65;
  margin:0;
}

/* Группы фильтров — без второй рамки (светлая тема; тёмная — theme-dark.css) */
.v2-period-group,
.v2-gran-group,
.v2-scale-group,
.v2-metric-group,
.v2-display-group,
.widget-filter-tabs,
.v2-filter-tabs-host,
.pf-v2-filter-cluster,
.v2-portfolio-filter-cluster,
.summary-funds-tabs,
.page-summary--dashboard .v2-compact-filters .widget-filter-tabs,
.page-summary--dashboard .v2-pf-filter-card .v2-filter-tabs-host,
.page-portfolio .v2-pf-filter-card .v2-filter-tabs-host,
.page-summary .summary-main-filters .summary-funds-tabs{
  background:transparent;
  border:none;
  box-shadow:none;
  padding:0;
  gap:4px;
}
.v2-wf-sep{
  width:1px;
  height:14px;
  margin:0 2px;
  background:var(--line);
  opacity:0.55;
  flex-shrink:0;
}

/* График — без внутренней карточки */
.v2-alfa-waterfall-host,
.v2-chart-surface{
  background:transparent;
  border:none;
  box-shadow:none;
  border-radius:0;
  overflow:visible;
  margin:0;
  padding:0;
}

/* Риск-KPI и аналитика */
.v2-alfa-risk-host,
.v2-alfa-movers-host{
  background:transparent;
  border:none;
  padding:0;
  box-shadow:none;
}
.v2-risk-kpi-tile{
  background:rgba(0,0,0,0.12);
  border:none;
  box-shadow:none;
  border-radius:var(--radius-sm,12px);
}
.v2-risk-kpi-tile:hover{
  background:rgba(255,255,255,0.04);
  box-shadow:none;
}
.v2-anl-period-bar{
  background:transparent;
  border:none;
  padding:0;
  margin:0 0 12px;
  gap:4px;
}
.v2-anl-grid{gap:var(--laconic-gap)}
.v2-anl-card{
  background:transparent;
  border:none;
  box-shadow:none;
  padding:0;
  border-radius:0;
}
.v2-anl-card-title{
  margin:0 0 10px;
  padding:0;
  border:none;
}

/* Главная: универсальные виджеты (динамика, риск, …) — колонка с зазором между карточками */
.v2-alfa-widgets,
.v2-dash-widgets,
.v2-dash-card-stack{
  display:flex;
  flex-direction:column;
  gap:var(--v2-capital-gap,var(--pf-kpi-grid-gap,var(--laconic-gap,16px)));
  margin:0;
  width:100%;
  max-width:100%;
  min-width:0;
  box-sizing:border-box;
}
.page-summary--dashboard .v2-alfa-widgets > .v2-dash-widget,
.page-summary--dashboard .v2-dash-widgets > .v2-dash-widget,
.page-summary--dashboard .v2-dash-widgets > details.v2-dash-widget,
.page-summary--dashboard .v2-dash-card-stack > .v2-dash-widget,
.page-summary--dashboard .v2-dash-card-stack > details.v2-dash-widget,
.page-summary--dashboard .v2-dash-card-stack > .v2-pf-filter-hero,
.page-summary--dashboard .v2-dash-card-stack > .v2-dash-subportfolios-band,
.page-summary--dashboard .v2-dash-card-stack > .v2-dash-composition-band{
  margin:0;
}
.v2-dash-widget{
  --v2-widget-accent:var(--card-cap-color);
  padding:var(--laconic-gap);
  overflow:hidden;
  min-width:0;
  max-width:100%;
  box-sizing:border-box;
}
.page-summary--dashboard .v2-pf-filter-hero,
.page-summary--dashboard .v2-wf-filter-hero,
.page-portfolio .v2-pf-filter-hero{
  width:100%;
  max-width:100%;
  box-sizing:border-box;
}
.v2-dash-widget--dynamics{--v2-widget-accent:var(--accent-2,#c96e17)}
.v2-dash-widget--risk{--v2-widget-accent:#5a8fd4}
.v2-dash-widget--leaders{--v2-widget-accent:var(--good,#76b67e)}
.v2-dash-widget--analytics{--v2-widget-accent:var(--accent-2,#c96e17)}
.v2-dash-widget--method{--v2-widget-accent:var(--muted)}
.v2-dash-widget--composition{--v2-widget-accent:var(--accent-2,#c96e17)}
.v2-dash-widget--subportfolios{--v2-widget-accent:#5a8fd4}
.v2-dash-widget--total{--v2-widget-accent:var(--ivory-300,var(--muted))}
.v2-dash-widget--filters{--v2-widget-accent:var(--ivory-400,var(--muted))}
/* Выпадающий список портфелей — не обрезать overflow карточки */
.page-summary--dashboard .v2-dash-widget--filters,
.page-summary--dashboard .v2-dash-widget--filters.v2-dash-widget--filters-menu-open{
  overflow:visible;
  position:relative;
  z-index:1;
}
.page-summary--dashboard .v2-dash-widget--filters.v2-dash-widget--filters-menu-open{
  z-index:1200;
}
.page-summary--dashboard .v2-dash-widget--filters .v2-dash-widget__body{
  overflow:visible;
}
.page-summary--dashboard .grid-2.dev-mod-main-charts{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:var(--laconic-gap);
  margin:0;
}
.page-summary--dashboard .grid-2.dev-mod-main-charts > .v2-dash-widget{
  margin:0;
  min-width:0;
}
@media (max-width:900px){
  .page-summary--dashboard .grid-2.dev-mod-main-charts{
    grid-template-columns:1fr;
  }
}
/* Портфели (дашборд) — на всю ширину, над блоком «Динамика» */
.page-summary--dashboard .v2-dash-subportfolios-band{
  display:block;
  width:100%;
  margin:0;
}
.page-summary--dashboard .v2-dash-subportfolios-band > .v2-dash-widget--subportfolios{
  width:100%;
  max-width:none;
}
.page-summary--dashboard .v2-dash-composition-band{
  display:block;
  width:100%;
  margin:0;
}
.page-summary--dashboard .v2-dash-composition-band > .v2-dash-widget{
  width:100%;
  max-width:none;
}
.v2-dash-widget__summary{
  display:flex;
  align-items:center;
  cursor:pointer;
  list-style:none;
  padding:0;
  margin:0;
  user-select:none;
}
.v2-dash-widget[open] > .v2-dash-widget__summary{
  margin-bottom:var(--laconic-gap);
}
.v2-dash-widget__summary::-webkit-details-marker{display:none}
.v2-dash-widget__body{padding:0}
.v2-dash-widget__title{
  display:inline-flex;
  align-items:center;
  margin:0;
  font-size:12px;
  font-weight:700;
  letter-spacing:0.06em;
  line-height:1.25;
  text-transform:uppercase;
  color:var(--v2-widget-accent);
}
.v2-dash-widget__title::before,
.v2-movers-col-head::before{
  content:'';
  display:inline-block;
  width:0;
  height:0;
  margin-right:10px;
  border-left:5px solid transparent;
  border-right:5px solid transparent;
  border-top:7px solid currentColor;
  vertical-align:middle;
  transform-origin:50% 40%;
  transition:transform .15s ease;
  flex-shrink:0;
}
.v2-dash-widget:not([open]) .v2-dash-widget__title::before{
  transform:rotate(-90deg);
}
.v2-dash-widget .v2-alfa-risk-host,
.v2-dash-widget .v2-alfa-movers-host{
  border:none;
  padding:0;
  background:transparent;
  box-shadow:none;
}
.card-laconic-tools--full{
  flex:1 1 100%;
  width:100%;
  justify-content:flex-start;
  flex-wrap:wrap;
}
.v2-movers-col-head{
  font-size:0.75rem;
  font-weight:700;
  margin:0 0 7px;
  text-transform:uppercase;
  letter-spacing:0.04em;
  display:flex;
  align-items:center;
  color:var(--good,#76b67e);
}
.v2-movers-col-head::before{
  margin-right:8px;
}
.v2-movers-col-head--losers{color:var(--bad,#f05a5a)}

/* Сайдбар: таблетки — яркий оранжевый контур + иконка; неактивные SVG/₽ — ярко-белые */
.side-link{
  --side-tab-orange:var(--orange-bright,var(--accent-2,#ffad52));
  --side-tab-orange-line:var(--orange,var(--accent,#ff9933));
  border:2px solid transparent;
  box-sizing:border-box;
  background:transparent;
  transition:background .15s ease,border-color .15s ease,box-shadow .15s ease,color .15s ease;
}
.side-link .nav-ico{
  color:inherit;
  transition:color .15s ease,stroke .15s ease;
}
.side-link .nav-ico svg{
  stroke:currentColor;
}
.side-link .nav-ico--rub .nav-rub-glyph{
  display:block;
  font-size:20px;
  font-weight:400;
  line-height:1;
  letter-spacing:0;
  font-family:system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
}
.side-link .nav-txt{
  color:inherit;
  transition:color .15s ease;
}
html.theme-dark .sidebar .side-link:not(.active):not(.is-active){
  color:rgba(255,255,255,.92);
}
html.theme-dark .sidebar .side-link:not(.active):not(.is-active) .nav-ico,
html.theme-dark .sidebar .side-link:not(.active):not(.is-active) .nav-ico svg,
html.theme-dark .sidebar .side-link:not(.active):not(.is-active) .nav-rub-glyph{
  color:#fff;
  stroke:#fff;
}
html.theme-dark .sidebar .side-link:not(.active):not(.is-active):hover{
  background:rgba(255,255,255,.06);
  border-color:var(--line);
}
html.theme-dark .sidebar .side-link:not(.active):not(.is-active):hover .nav-ico,
html.theme-dark .sidebar .side-link:not(.active):not(.is-active):hover .nav-ico svg,
html.theme-dark .sidebar .side-link:not(.active):not(.is-active):hover .nav-rub-glyph{
  color:#fff;
  stroke:#fff;
}
/* Оранжевая таблетка — Капитал (только при tab-summary) и Кабинет */
#tab-summary:checked ~ .app-shell .sidebar .side-link[class*="s-capital-"].active,
#tab-summary:checked ~ .app-shell .sidebar .side-link[class*="s-capital-"].is-active,
#tab-account:checked ~ .app-shell .sidebar .s-account{
  background:rgba(255,153,51,.08);
  border-color:var(--side-tab-orange);
  box-shadow:0 0 0 1px var(--orange-line-soft,rgba(255,153,51,.35)),0 0 12px var(--orange-glow,rgba(255,153,51,.22));
  color:var(--side-tab-orange);
  font-weight:600;
}
html.theme-dark #tab-summary:checked ~ .app-shell .sidebar .side-link[class*="s-capital-"].active,
html.theme-dark #tab-summary:checked ~ .app-shell .sidebar .side-link[class*="s-capital-"].is-active,
html.theme-dark #tab-account:checked ~ .app-shell .sidebar .s-account{
  background:rgba(255,153,51,.1);
  border-color:var(--side-tab-orange);
  box-shadow:0 0 0 1px var(--orange-line,rgba(255,153,51,.55)),0 0 14px var(--orange-glow,rgba(255,153,51,.28));
  color:var(--side-tab-orange);
}
#tab-summary:checked ~ .app-shell .sidebar .side-link[class*="s-capital-"].active .nav-ico,
#tab-summary:checked ~ .app-shell .sidebar .side-link[class*="s-capital-"].is-active .nav-ico,
#tab-summary:checked ~ .app-shell .sidebar .side-link[class*="s-capital-"].active .nav-ico svg,
#tab-summary:checked ~ .app-shell .sidebar .side-link[class*="s-capital-"].is-active .nav-ico svg,
#tab-summary:checked ~ .app-shell .sidebar .side-link[class*="s-capital-"].active .nav-rub-glyph,
#tab-summary:checked ~ .app-shell .sidebar .side-link[class*="s-capital-"].is-active .nav-rub-glyph,
#tab-account:checked ~ .app-shell .sidebar .s-account .nav-ico,
#tab-account:checked ~ .app-shell .sidebar .s-account .nav-ico svg{
  color:var(--side-tab-orange);
  stroke:var(--side-tab-orange);
}
#tab-summary:checked ~ .app-shell .sidebar .side-link[class*="s-capital-"].active .nav-txt,
#tab-summary:checked ~ .app-shell .sidebar .side-link[class*="s-capital-"].is-active .nav-txt,
#tab-account:checked ~ .app-shell .sidebar .s-account .nav-txt{
  color:var(--side-tab-orange);
}
/* Белая таблетка — Staff only и Журнал */
#tab-settings:checked ~ .app-shell .sidebar .s-settings,
#tab-changelog:checked ~ .app-shell .sidebar .s-changelog{
  background:rgba(255,255,255,.1);
  border-color:#fff;
  box-shadow:0 0 0 1px rgba(255,255,255,.4),0 0 12px rgba(255,255,255,.18);
  color:#fff;
  font-weight:600;
}
html.theme-dark #tab-settings:checked ~ .app-shell .sidebar .s-settings,
html.theme-dark #tab-changelog:checked ~ .app-shell .sidebar .s-changelog{
  background:rgba(255,255,255,.12);
  border-color:#fff;
  box-shadow:0 0 0 1px rgba(255,255,255,.55),0 0 14px rgba(255,255,255,.22);
  color:#fff;
}
#tab-settings:checked ~ .app-shell .sidebar .s-settings .nav-ico,
#tab-settings:checked ~ .app-shell .sidebar .s-settings .nav-ico svg,
#tab-changelog:checked ~ .app-shell .sidebar .s-changelog .nav-ico,
#tab-changelog:checked ~ .app-shell .sidebar .s-changelog .nav-ico svg,
#tab-settings:checked ~ .app-shell .sidebar .s-settings .nav-txt,
#tab-changelog:checked ~ .app-shell .sidebar .s-changelog .nav-txt{
  color:#fff;
  stroke:#fff;
}
/* Вне tab-summary классы active у Капитала не подсвечиваются */
#tab-account:checked ~ .app-shell .sidebar .side-link[class*="s-capital-"].active,
#tab-account:checked ~ .app-shell .sidebar .side-link[class*="s-capital-"].is-active,
#tab-settings:checked ~ .app-shell .sidebar .side-link[class*="s-capital-"].active,
#tab-settings:checked ~ .app-shell .sidebar .side-link[class*="s-capital-"].is-active,
#tab-changelog:checked ~ .app-shell .sidebar .side-link[class*="s-capital-"].active,
#tab-changelog:checked ~ .app-shell .sidebar .side-link[class*="s-capital-"].is-active{
  background:transparent;
  border-color:transparent;
  box-shadow:none;
  font-weight:400;
}
#tab-account:checked ~ .app-shell .sidebar .side-link[class*="s-capital-"].active .nav-ico,
#tab-account:checked ~ .app-shell .sidebar .side-link[class*="s-capital-"].is-active .nav-ico,
#tab-account:checked ~ .app-shell .sidebar .side-link[class*="s-capital-"].active .nav-ico svg,
#tab-account:checked ~ .app-shell .sidebar .side-link[class*="s-capital-"].is-active .nav-ico svg,
#tab-account:checked ~ .app-shell .sidebar .side-link[class*="s-capital-"].active .nav-rub-glyph,
#tab-account:checked ~ .app-shell .sidebar .side-link[class*="s-capital-"].is-active .nav-rub-glyph,
#tab-settings:checked ~ .app-shell .sidebar .side-link[class*="s-capital-"].active .nav-ico,
#tab-settings:checked ~ .app-shell .sidebar .side-link[class*="s-capital-"].is-active .nav-ico,
#tab-settings:checked ~ .app-shell .sidebar .side-link[class*="s-capital-"].active .nav-ico svg,
#tab-settings:checked ~ .app-shell .sidebar .side-link[class*="s-capital-"].is-active .nav-ico svg,
#tab-settings:checked ~ .app-shell .sidebar .side-link[class*="s-capital-"].active .nav-rub-glyph,
#tab-settings:checked ~ .app-shell .sidebar .side-link[class*="s-capital-"].is-active .nav-rub-glyph,
#tab-changelog:checked ~ .app-shell .sidebar .side-link[class*="s-capital-"].active .nav-ico,
#tab-changelog:checked ~ .app-shell .sidebar .side-link[class*="s-capital-"].is-active .nav-ico,
#tab-changelog:checked ~ .app-shell .sidebar .side-link[class*="s-capital-"].active .nav-ico svg,
#tab-changelog:checked ~ .app-shell .sidebar .side-link[class*="s-capital-"].is-active .nav-ico svg,
#tab-changelog:checked ~ .app-shell .sidebar .side-link[class*="s-capital-"].active .nav-rub-glyph,
#tab-changelog:checked ~ .app-shell .sidebar .side-link[class*="s-capital-"].is-active .nav-rub-glyph{
  color:#fff;
  stroke:#fff;
}

/* Портфель: ряд отдельных карточек KPI + дата среза */
.page-portfolio{
  --pf-kpi-orange:var(--orange,var(--accent,#ff9933));
  --pf-kpi-orange-bright:var(--orange-bright,var(--accent-2,#ffad52));
  --pf-kpi-orange-fill:linear-gradient(180deg,var(--pf-kpi-orange-bright) 0%,var(--pf-kpi-orange) 100%);
  --pf-kpi-green-fill:var(--good-fill-gradient,linear-gradient(180deg,#76c77a 0%,#5cb860 100%));
  --pf-kpi-green-glow:var(--good-glow,rgba(92,184,96,.32));
  --pf-kpi-blue:var(--nav,#5d99c6);
  --pf-kpi-blue-dim:var(--nav,#5d99c6);
  --pf-kpi-count-w:96px;
  --pf-kpi-widgets-w:124px;
}
.page-portfolio .v2-pf-hero{
  margin:0;
  padding:0;
  height:auto;
  min-height:var(--lop-card-min-h);
  max-height:none;
  flex:0 0 auto;
  background:transparent;
  border:none;
  box-shadow:none;
  border-radius:0;
}
.page-portfolio .v2-pf-hero-body{
  display:block;
  height:auto;
  min-height:var(--lop-card-min-h);
  max-height:none;
}
.page-portfolio .v2-pf-kpi-grid{
  display:grid;
  align-items:stretch;
  grid-template-columns:var(--pf-kpi-grid-cols-7);
  grid-auto-rows:var(--lop-card-min-h);
  grid-auto-flow:row;
  gap:var(--pf-kpi-grid-gap,8px);
  width:100%;
  max-width:100%;
  min-width:0;
  height:auto;
  min-height:var(--lop-card-min-h);
  max-height:none;
  overflow:visible;
  box-sizing:border-box;
}
.page-portfolio .v2-pf-hero,
.page-portfolio .v2-pf-hero-body{
  width:100%;
  max-width:100%;
  min-width:0;
  box-sizing:border-box;
}
.page-portfolio .v2-pf-hero,
.page-portfolio .v2-pf-hero-body{
  position:relative;
  z-index:2;
  overflow:visible;
}
.page-portfolio .v2-pf-filter-hero,
.page-summary--dashboard .v2-pf-filter-hero,
.page-summary--dashboard .v2-wf-filter-hero{
  margin:0;
  padding:0;
  background:transparent;
  border:none;
  box-shadow:none;
  border-radius:0;
  position:relative;
  z-index:2;
  overflow:visible;
}
.page-portfolio .v2-pf-filter-hero,
.page-summary--dashboard .v2-pf-filter-hero{
  --v2-sources-icon-count:10;
  --v2-sources-icon-size:32px;
  --v2-sources-icon-gap:6px;
  --v2-sources-icons-w:calc(var(--v2-sources-icon-count) * var(--v2-sources-icon-size) + (var(--v2-sources-icon-count) - 1) * var(--v2-sources-icon-gap));
  --v2-sources-card-pad-x:14px;
  --v2-sources-card-border-w:var(--lop-border-w,2px);
  --v2-sources-card-w:calc(var(--v2-sources-icons-w) + 2 * var(--v2-sources-card-pad-x) + 2 * var(--v2-sources-card-border-w));
}
.page-portfolio .v2-pf-filter-grid,
.page-summary--dashboard .v2-pf-filter-grid{
  display:grid;
  gap:var(--pf-kpi-grid-gap,10px);
  align-items:stretch;
  overflow:visible;
  min-height:var(--lop-card-min-h);
  min-width:0;
  max-width:100%;
  width:100%;
  box-sizing:border-box;
}
.page-portfolio .v2-pf-filter-hero,
.page-summary--dashboard .v2-pf-filter-hero{
  min-width:0;
  max-width:100%;
  overflow:visible;
}
.page-portfolio .v2-pf-filter-grid > .v2-pf-filter-card,
.page-summary--dashboard .v2-pf-filter-grid > .v2-pf-filter-card{
  align-self:stretch;
  height:100%;
  min-height:var(--lop-card-min-h);
}
.page-summary--dashboard .v2-wf-filter-card .v2-dash-widget__body{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:6px;
}
.page-summary--dashboard .v2-wf-filter-card .v2-period-group,
.page-summary--dashboard .v2-wf-filter-card .v2-metric-group,
.page-summary--dashboard .v2-wf-filter-card .v2-display-group,
.page-summary--dashboard .v2-wf-filter-card .v2-gran-group,
.page-summary--dashboard .v2-wf-filter-card .v2-scale-group{
  display:inline-flex;
  flex-wrap:wrap;
  align-items:center;
  gap:4px;
  background:transparent;
  border:none;
  box-shadow:none;
  padding:0;
}
.page-summary--dashboard .v2-dash-widget__body--dynamics-chart{
  padding:0;
  min-height:0;
}
.page-summary--dashboard .v2-dash-widget--dynamics .v2-alfa-waterfall-host{
  margin:0;
}
.page-portfolio .v2-pf-filter-card,
.page-portfolio .v2-pf-filter-card.v2-dash-widget--filters-menu-open,
.page-summary--dashboard .v2-pf-filter-card,
.page-summary--dashboard .v2-wf-filter-card,
.page-summary--dashboard .v2-pf-filter-card.v2-dash-widget--filters-menu-open,
.page-summary--dashboard .v2-wf-filter-card.v2-dash-widget--filters-menu-open{
  overflow:visible;
  position:relative;
  z-index:4;
  margin:0;
  padding:12px 14px;
  min-height:var(--lop-card-min-h);
  height:100%;
  box-sizing:border-box;
  display:flex;
  flex-direction:column;
}
.page-portfolio .v2-pf-filter-card.v2-dash-widget--filters-menu-open,
.page-portfolio .v2-pf-filter-card--menu-open,
.page-summary--dashboard .v2-pf-filter-card.v2-dash-widget--filters-menu-open,
.page-summary--dashboard .v2-pf-filter-card--menu-open{
  z-index:1200;
}
.page-portfolio .v2-pf-filter-card .v2-dash-widget__summary,
.page-summary--dashboard .v2-pf-filter-card .v2-dash-widget__summary,
.page-portfolio .v2-pf-filter-card--flat .v2-dash-widget__head,
.page-summary--dashboard .v2-pf-filter-card--flat .v2-dash-widget__head{
  flex:0 0 auto;
}
.page-portfolio .v2-pf-filter-card[open] > .v2-dash-widget__summary,
.page-summary--dashboard .v2-pf-filter-card[open] > .v2-dash-widget__summary,
.page-portfolio .v2-pf-filter-card--flat .v2-dash-widget__head,
.page-summary--dashboard .v2-pf-filter-card--flat .v2-dash-widget__head{
  margin-bottom:8px;
}
/* Фильтры в ряду: без сворачивания и без треугольника */
.page-portfolio .v2-pf-filter-hero .v2-pf-filter-card--flat .v2-dash-widget__title::before,
.page-summary--dashboard .v2-pf-filter-hero .v2-pf-filter-card--flat .v2-dash-widget__title::before,
.page-portfolio .v2-wf-filter-hero .v2-pf-filter-card--flat .v2-dash-widget__title::before,
.page-summary--dashboard .v2-wf-filter-hero .v2-pf-filter-card--flat .v2-dash-widget__title::before{
  display:none;
  content:none;
  margin:0;
  width:0;
  height:0;
  border:none;
}
.page-portfolio .v2-pf-filter-hero .v2-pf-filter-card--flat .v2-dash-widget__head,
.page-summary--dashboard .v2-pf-filter-hero .v2-pf-filter-card--flat .v2-dash-widget__head,
.page-portfolio .v2-wf-filter-hero .v2-pf-filter-card--flat .v2-dash-widget__head,
.page-summary--dashboard .v2-wf-filter-hero .v2-pf-filter-card--flat .v2-dash-widget__head{
  cursor:default;
  list-style:none;
  padding:0;
  margin:0 0 8px;
  user-select:none;
}
/* Источники: та же ширина/высота, что у «Счета» и «Классы» (сетка 1/3) */
.page-portfolio .v2-pf-filter-card--sources,
.page-summary--dashboard .v2-pf-filter-card--sources{
  width:100%;
  min-width:0;
  max-width:100%;
  align-self:stretch;
  justify-self:stretch;
  box-sizing:border-box;
  cursor:pointer;
  -webkit-user-select:none;
  user-select:none;
}
.page-portfolio .v2-pf-filter-card--sources .v2-pf-sources-toolbar .widget-filter-tabs,
.page-summary--dashboard .v2-pf-filter-card--sources .v2-pf-sources-toolbar .widget-filter-tabs{
  width:100%;
  min-width:0;
  max-width:100%;
  flex-wrap:wrap;
  justify-content:flex-start;
}
.page-portfolio .v2-pf-filter-card--sources .v2-pf-sources-toolbar,
.page-summary--dashboard .v2-pf-filter-card--sources .v2-pf-sources-toolbar{
  width:100%;
  min-width:0;
  max-width:100%;
}
.page-portfolio .v2-pf-filter-card--sources .v2-pf-sources-toolbar .widget-filter-tab--icon-only,
.page-summary--dashboard .v2-pf-filter-card--sources .v2-pf-sources-toolbar .widget-filter-tab--icon-only{
  width:var(--v2-sources-icon-size);
  min-width:var(--v2-sources-icon-size);
  flex:0 0 var(--v2-sources-icon-size);
}
.page-portfolio .v2-pf-filter-card--sources > .v2-pf-sources-expand-slot,
.page-summary--dashboard .v2-pf-filter-card--sources > .v2-pf-sources-expand-slot{
  -webkit-user-select:none;
  user-select:none;
}
.page-portfolio .v2-pf-filter-card--sources button,
.page-summary--dashboard .v2-pf-filter-card--sources button,
.page-portfolio .v2-pf-filter-card--sources input,
.page-summary--dashboard .v2-pf-filter-card--sources input,
.page-portfolio .v2-pf-filter-card--sources .widget-filter-tab,
.page-summary--dashboard .v2-pf-filter-card--sources .widget-filter-tab,
.page-portfolio .v2-pf-filter-card--sources a,
.page-summary--dashboard .v2-pf-filter-card--sources a{
  cursor:pointer;
}
.page-portfolio .v2-pf-filter-card .v2-dash-widget__body,
.page-summary--dashboard .v2-pf-filter-card .v2-dash-widget__body{
  overflow:visible;
  flex:1 1 auto;
  min-width:0;
  min-height:0;
  display:flex;
  align-items:flex-start;
}
.page-portfolio .v2-pf-filter-card .v2-filter-tabs-host,
.page-summary--dashboard .v2-pf-filter-card .v2-filter-tabs-host{
  display:inline-flex;
  flex-wrap:wrap;
  align-items:center;
  gap:6px;
  width:100%;
  min-width:0;
  position:relative;
  z-index:2;
  pointer-events:auto;
}
.page-portfolio .v2-pf-filter-card__body--accounts,
.page-summary--dashboard .v2-pf-filter-card__body--accounts{
  flex-wrap:wrap;
  gap:8px;
  align-items:center;
}
.page-portfolio .v2-pf-reset-accounts-btn,
.page-summary--dashboard .v2-pf-reset-accounts-btn{
  flex:0 0 auto;
  font-size:12px;
  padding:4px 10px;
}
.page-portfolio .v2-pf-body,
.page-portfolio .v2-pf-table-card,
.page-summary--dashboard .v2-pf-table-card{
  position:relative;
  z-index:1;
  margin-top:0;
  flex-shrink:0;
  min-width:0;
  max-width:100%;
  overflow:visible;
}
.page-portfolio .v2-pf-table-card,
.page-summary--dashboard .v2-pf-table-card{
  padding:var(--laconic-gap);
}
.page-portfolio .v2-pf-table-card__summary,
.page-summary--dashboard .v2-pf-table-card__summary{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  width:100%;
  min-width:0;
  cursor:pointer;
  list-style:none;
  padding:0;
  margin:0;
  user-select:none;
}
.page-portfolio .v2-pf-table-card[open] > .v2-pf-table-card__summary,
.page-summary--dashboard .v2-pf-table-card[open] > .v2-pf-table-card__summary{
  margin-bottom:var(--laconic-gap);
}
.page-portfolio .v2-pf-table-card__summary .v2-pf-table-toolbar{
  flex:1 1 auto;
  min-width:0;
  margin:0;
  display:flex;
  justify-content:flex-end;
  align-items:center;
  position:relative;
  z-index:50;
  overflow:visible;
}
.page-portfolio .v2-pf-table-card__summary::-webkit-details-marker,
.page-summary--dashboard .v2-pf-table-card__summary::-webkit-details-marker{display:none}
.page-summary--dashboard .v2-pf-table-card__body .v2-pf-table-card__toolbar{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:flex-end;
  gap:10px;
  margin:0 0 12px;
  padding:0 0 10px;
  border-bottom:1px solid var(--line);
  position:relative;
  z-index:50;
  overflow:visible;
}
.page-summary--dashboard .v2-pf-table-card__body .v2-pf-table-search-input{
  flex:1 1 280px;
  min-width:200px;
  max-width:420px;
}
.page-summary--dashboard .v2-pf-table-card__body .pf-v2-cols-anchor{
  flex:0 0 auto;
  position:relative;
  min-width:72px;
  height:var(--pf-toolbar-control-h,32px);
  z-index:60;
}
.page-summary--dashboard.pf-portfolio-cols-open .v2-pf-table-card:has(.pf-cols-lop-chip.is-open){
  z-index:220;
  overflow:visible;
}
.page-portfolio .v2-pf-table-card__body,
.page-summary--dashboard .v2-pf-table-card__body{
  padding:0;
  min-width:0;
  max-width:100%;
  overflow-x:auto;
  overflow-y:visible;
  -webkit-overflow-scrolling:touch;
}
.page-portfolio .v2-pf-table-toolbar__cluster,
.page-summary--dashboard .v2-pf-table-card__toolbar{
  display:inline-flex;
  flex-direction:row;
  flex-wrap:nowrap;
  align-items:center;
  justify-content:flex-end;
  gap:10px;
  max-width:100%;
  min-width:0;
  position:relative;
}
.page-portfolio .v2-pf-table-toolbar__cluster .v2-pf-table-search-input,
.page-summary--dashboard .v2-pf-table-card__toolbar .v2-pf-table-search-input{
  display:block;
  flex:0 1 360px;
  width:min(360px,42vw);
  min-width:200px;
  max-width:100%;
  box-sizing:border-box;
  height:var(--pf-toolbar-control-h,32px);
  margin:0;
}
.page-portfolio .v2-pf-table-toolbar__cluster .pf-v2-cols-anchor,
.page-summary--dashboard .v2-pf-table-card__toolbar .pf-v2-cols-anchor{
  position:relative;
  flex:0 0 auto;
  display:flex;
  align-items:center;
  width:auto;
  min-width:72px;
  height:var(--pf-toolbar-control-h,32px);
  min-height:var(--pf-toolbar-control-h,32px);
  max-height:var(--pf-toolbar-control-h,32px);
  overflow:visible;
  z-index:60;
}
.page-portfolio .v2-pf-table-toolbar__cluster .pf-v2-cols-anchor:has(.pf-cols-lop-chip.is-open){
  height:var(--pf-toolbar-control-h,32px);
  min-height:var(--pf-toolbar-control-h,32px);
  max-height:var(--pf-toolbar-control-h,32px);
}
.page-portfolio .v2-pf-table-toolbar__cluster .pf-cols-lop-chip.laconic-overlay-picker:not(.is-open){
  position:relative;
  top:auto;
  right:auto;
  left:auto;
  margin:0;
}
.page-portfolio .v2-pf-table-toolbar__cluster .pf-cols-lop-chip.laconic-overlay-picker.is-open,
.page-summary--dashboard .v2-pf-table-card__toolbar .pf-cols-lop-chip.laconic-overlay-picker.is-open{
  position:absolute;
  top:0;
  right:0;
  left:auto;
  z-index:230;
  height:auto;
  max-height:none;
}
.page-portfolio .v2-pf-table-card__toolbar .pf-cols-lop-chip.laconic-overlay-picker:not(.is-open),
.page-summary--dashboard .v2-pf-table-card__toolbar .pf-cols-lop-chip.laconic-overlay-picker:not(.is-open){
  position:relative;
  top:auto;
  right:auto;
  left:auto;
  margin:0;
}
.page-portfolio .v2-pf-table-card .pf-v2-cols-anchor,
.page-summary--dashboard .v2-pf-table-card .pf-v2-cols-anchor{
  position:relative;
  z-index:50;
}
.page-portfolio.pf-portfolio-cols-open .v2-pf-table-card:has(.pf-cols-lop-chip.is-open){
  z-index:220;
  overflow:visible;
}
.page-portfolio.pf-portfolio-cols-open .v2-pf-table-card:has(.pf-cols-lop-chip.is-open) .v2-pf-table-card__summary,
.page-summary--dashboard.pf-portfolio-cols-open .v2-pf-table-card:has(.pf-cols-lop-chip.is-open) .v2-pf-table-card__summary{
  position:relative;
  z-index:230;
  overflow:visible;
}
.page-portfolio.pf-portfolio-cols-open .v2-pf-table-card:has(.pf-cols-lop-chip.is-open) .v2-pf-table-card__body,
.page-summary--dashboard.pf-portfolio-cols-open .v2-pf-table-card:has(.pf-cols-lop-chip.is-open) .v2-pf-table-card__body{
  position:relative;
  z-index:1;
  overflow:visible;
}
.page-summary--dashboard.pf-portfolio-cols-open .v2-pf-table-card:has(.pf-cols-lop-chip.is-open) .pf-v2-cols-anchor,
.page-portfolio.pf-portfolio-cols-open .v2-pf-table-card:has(.pf-cols-lop-chip.is-open) .pf-v2-cols-anchor{
  z-index:231;
}
@media (max-width:900px){
  .page-portfolio .v2-pf-kpi-grid,
  .page-summary--dashboard .v2-pf-kpi-grid--summary{
    grid-template-columns:var(--pf-kpi-grid-cols-7);
    grid-auto-rows:var(--lop-card-min-h);
    grid-auto-flow:row;
    height:auto;
    min-height:var(--lop-card-min-h);
    max-height:none;
  }
  .page-portfolio .v2-pf-kpi-grid .v2-kpi--nav,
  .page-summary--dashboard .v2-pf-kpi-grid--summary .v2-kpi--nav{
    grid-column:auto;
  }
  .page-summary--dashboard .v2-pf-kpi-grid--capital{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .page-summary--dashboard .v2-pf-kpi-grid--capital .v2-kpi--nav,
  .page-summary--dashboard .v2-pf-kpi-grid--capital .v2-kpi--capital-date{
    grid-column:span 1;
  }
  .page-summary--dashboard .v2-pf-kpi-grid--capital .v2-kpi--capital-primary{
    grid-column:1 / -1;
  }
  .page-summary--dashboard .v2-pf-kpi-grid--capital.v2-pf-kpi-grid--scenario-money{
    grid-template-columns:repeat(2,minmax(0,1fr)) var(--pf-kpi-reload-size);
  }
  .page-summary--dashboard .v2-pf-kpi-grid--capital.v2-pf-kpi-grid--scenario-money .v2-kpi--reload{
    grid-row:auto;
  }
  .page-portfolio .v2-pf-filter-grid:not(.v2-wf-filter-grid),
  .page-summary--dashboard .v2-pf-filter-grid:not(.v2-wf-filter-grid){
    grid-template-columns:minmax(0,1fr);
  }
  .page-summary--dashboard .v2-wf-filter-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .page-portfolio .v2-pf-filter-card,
  .page-summary--dashboard .v2-pf-filter-card,
  .page-summary--dashboard .v2-wf-filter-card{
    height:auto;
    min-height:var(--lop-card-min-h);
  }
  .page-summary--dashboard .v2-dash-hero,
  .page-summary--dashboard .v2-dash-hero-body,
  .page-portfolio .v2-pf-hero,
  .page-portfolio .v2-pf-hero-body{
    height:auto;
    max-height:none;
    flex:0 0 auto;
  }
}
.v2-pf-kpi-grid{
  --pf-kpi-line-size:14px;
  --pf-kpi-line-weight:500;
  --pf-kpi-line-lh:1.15;
  --pf-kpi-line-gap:4px;
  --lop-font-size:var(--pf-kpi-line-size);
  --lop-font-weight:300;
  --lop-font-weight-value:var(--pf-kpi-line-weight);
  --lop-trigger-h:calc(var(--pf-kpi-line-size) * var(--pf-kpi-line-lh));
  --pf-date-card-w:148px;
  --pf-kpi-reload-w:124px;
  --pf-kpi-widgets-w:124px;
  --pf-kpi-widgets-fill:#e6e6e6;
  --pf-kpi-widgets-border:#d4d4d4;
  --pf-kpi-fill-text:var(--color-onyx,#0f0f0f);
  --pf-kpi-green-fill:var(--good-fill-gradient,linear-gradient(180deg,#76c77a 0%,#5cb860 100%));
  --pf-kpi-green-glow:var(--good-glow,rgba(92,184,96,.32));
  --pf-kpi-blue:var(--nav,#5d99c6);
  --pf-kpi-blue-dim:var(--nav,#5d99c6);
  --pf-kpi-red:var(--bad,#ef5350);
}
.v2-pf-kpi-grid .laconic-overlay-picker.v2-pf-date-wheel-card:not(.v2-widget-layout-card){
  width:100%;
  min-width:0;
  max-width:100%;
}
.page-summary--dashboard .v2-pf-kpi-grid--summary .laconic-overlay-picker.v2-pf-date-wheel-card:not(.v2-widget-layout-card),
.page-portfolio .v2-pf-kpi-grid .laconic-overlay-picker.v2-pf-date-wheel-card:not(.v2-widget-layout-card){
  padding:12px 14px;
  height:auto;
  min-height:var(--lop-card-min-h);
  max-height:var(--lop-card-min-h);
  box-sizing:border-box;
  position:relative;
  overflow:visible;
  align-self:start;
}
.page-summary--dashboard .v2-pf-kpi-grid--summary .laconic-overlay-picker.v2-pf-date-wheel-card.is-open:not(.v2-widget-layout-card):not(.v2-slice-date-card--inline),
.page-portfolio .v2-pf-kpi-grid .laconic-overlay-picker.v2-pf-date-wheel-card.is-open:not(.v2-widget-layout-card):not(.v2-slice-date-card--inline){
  width:100%;
  min-width:0;
  max-width:100%;
  height:var(--lop-card-min-h)!important;
  min-height:var(--lop-card-min-h)!important;
  max-height:var(--lop-card-min-h)!important;
  padding:12px 14px;
  overflow:visible;
  z-index:2500;
  align-self:start;
}
.page-portfolio .v2-pf-kpi-grid .laconic-overlay-picker.v2-pf-date-wheel-card.is-open:not(.v2-widget-layout-card):not(.v2-slice-date-card--inline) .laconic-overlay-picker__host.is-open,
.page-summary--dashboard .v2-pf-kpi-grid--summary .laconic-overlay-picker.v2-pf-date-wheel-card.is-open:not(.v2-widget-layout-card):not(.v2-slice-date-card--inline) .laconic-overlay-picker__host.is-open{
  position:absolute;
  top:calc(100% - 2px);
  left:0;
  right:auto;
  width:var(--pf-date-card-w,148px);
  min-width:var(--pf-date-card-w,148px);
  max-width:var(--pf-date-card-w,148px);
  display:block;
  grid-template-columns:none;
  min-height:0;
  max-height:var(--lop-expand-scroll-max,378px);
  margin:0;
  padding:0 0 calc(var(--lop-pad-bottom,10px) + var(--lop-border-w,2px));
  border:var(--lop-border-w,2px) solid var(--filter-chip-active-border,var(--accent,var(--orange,#df7f25)));
  border-top:none;
  border-radius:0 0 var(--laconic-radius,12px) var(--laconic-radius,12px);
  box-shadow:0 10px 32px rgba(0,0,0,.14),0 2px 8px rgba(0,0,0,.08);
  background:var(--laconic-card-bg,var(--panel));
  overflow:hidden;
  box-sizing:border-box;
  z-index:2501;
}
.page-portfolio .v2-pf-kpi-grid .laconic-overlay-picker.v2-pf-date-wheel-card.is-open:not(.v2-widget-layout-card):not(.v2-slice-date-card--inline) .laconic-overlay-picker__host.is-open .laconic-overlay-picker__panel,
.page-summary--dashboard .v2-pf-kpi-grid--summary .laconic-overlay-picker.v2-pf-date-wheel-card.is-open:not(.v2-widget-layout-card):not(.v2-slice-date-card--inline) .laconic-overlay-picker__host.is-open .laconic-overlay-picker__panel{
  grid-column:auto;
  max-height:var(--lop-expand-scroll-max,378px);
}
.page-summary--dashboard .v2-pf-kpi-grid--summary:has(.v2-pf-date-wheel-card.is-open:not(.v2-widget-layout-card):not(.v2-slice-date-card--inline)),
.page-portfolio .v2-pf-kpi-grid:has(.v2-pf-date-wheel-card.is-open:not(.v2-widget-layout-card):not(.v2-slice-date-card--inline)){
  position:relative;
  z-index:2500;
  grid-auto-rows:var(--lop-card-min-h);
  height:auto;
  min-height:var(--lop-card-min-h);
  max-height:var(--lop-card-min-h);
  overflow:visible;
  align-items:start;
}
.page-portfolio .v2-pf-hero:has(.v2-pf-date-wheel-card.is-open:not(.v2-widget-layout-card):not(.v2-slice-date-card--inline)),
.page-summary--dashboard .v2-pf-hero:has(.v2-pf-date-wheel-card.is-open:not(.v2-widget-layout-card):not(.v2-slice-date-card--inline)),
.page-summary--dashboard .v2-dash-hero:has(.v2-pf-date-wheel-card.is-open:not(.v2-widget-layout-card):not(.v2-slice-date-card--inline)){
  z-index:2500;
  height:auto;
  min-height:var(--lop-card-min-h);
  max-height:var(--lop-card-min-h);
  overflow:visible;
}
.page-portfolio .v2-pf-hero-body:has(.v2-pf-date-wheel-card.is-open:not(.v2-widget-layout-card):not(.v2-slice-date-card--inline)),
.page-summary--dashboard .v2-pf-hero-body:has(.v2-pf-date-wheel-card.is-open:not(.v2-widget-layout-card):not(.v2-slice-date-card--inline)),
.page-summary--dashboard .v2-dash-hero-body:has(.v2-pf-date-wheel-card.is-open:not(.v2-widget-layout-card):not(.v2-slice-date-card--inline)){
  height:auto;
  min-height:var(--lop-card-min-h);
  max-height:var(--lop-card-min-h);
  overflow:visible;
}
/* Главная: фильтры ниже раскрытого списка дат */
.page-summary--dashboard:has(.v2-pf-date-wheel-card.is-open:not(.v2-widget-layout-card):not(.v2-slice-date-card--inline)) .v2-pf-filter-hero{
  z-index:1;
}
.page-summary--dashboard:has(.v2-pf-date-wheel-card.is-open:not(.v2-widget-layout-card):not(.v2-slice-date-card--inline)) .v2-pf-filter-card{
  z-index:1;
}
.page-summary--dashboard:has(.v2-pf-date-wheel-card.is-open:not(.v2-widget-layout-card):not(.v2-slice-date-card--inline)) .v2-pf-filter-card.v2-dash-widget--filters-menu-open,
.page-summary--dashboard:has(.v2-pf-date-wheel-card.is-open:not(.v2-widget-layout-card):not(.v2-slice-date-card--inline)) .v2-pf-filter-card--menu-open{
  z-index:1;
}
.v2-pf-kpi-grid .v2-kpi{
  padding:12px 14px;
  border-radius:var(--laconic-radius);
  background:var(--laconic-card-bg);
  border:1px solid var(--line);
  box-shadow:none;
  min-width:0;
  min-height:var(--lop-card-min-h);
  box-sizing:border-box;
  display:flex;
  flex-direction:column;
  justify-content:flex-start;
  gap:var(--pf-kpi-line-gap);
}
.v2-pf-kpi-grid .v2-kpi--reload{
  gap:0;
}
.v2-pf-kpi-grid .v2-kpi-label,
.v2-pf-kpi-grid--summary .v2-kpi-label,
.v2-pf-kpi-grid .v2-kpi-value,
.v2-pf-kpi-grid--summary .v2-kpi-value,
.v2-pf-kpi-grid .v2-kpi-pct,
.v2-pf-kpi-grid--summary .v2-kpi-pct,
.v2-pf-kpi-grid .v2-kpi-reload-label,
.v2-pf-kpi-grid--summary .v2-kpi-reload-label,
.v2-pf-kpi-grid .v2-kpi-reload-caption,
.v2-pf-kpi-grid--summary .v2-kpi-reload-caption,
.v2-pf-kpi-grid .v2-pf-date-wheel-card .laconic-overlay-picker__trigger,
.v2-pf-kpi-grid--summary .v2-pf-date-wheel-card .laconic-overlay-picker__trigger,
.v2-pf-kpi-grid .v2-pf-date-picker-trigger,
.v2-pf-kpi-grid--summary .v2-pf-date-picker-trigger,
.v2-pf-kpi-grid .v2-widget-layout-summary,
.v2-pf-kpi-grid--summary .v2-widget-layout-summary{
  font-family:inherit;
  font-size:var(--pf-kpi-line-size);
  font-weight:var(--pf-kpi-line-weight);
  line-height:var(--pf-kpi-line-lh);
  letter-spacing:normal;
  text-transform:none;
  text-align:left;
  font-variant-numeric:tabular-nums;
  margin:0;
  padding:0;
  min-height:0;
  flex:0 0 auto;
  box-sizing:border-box;
}
.v2-pf-kpi-grid .v2-kpi-label,
.v2-pf-kpi-grid--summary .v2-kpi-label{
  color:inherit;
}
.v2-pf-kpi-grid .v2-kpi--reload{
  width:100%;
  min-width:0;
  max-width:100%;
  justify-self:stretch;
  padding:0;
  overflow:hidden;
  background:var(--pf-kpi-green-fill);
  border-color:var(--good,#76c77a);
  box-shadow:0 4px 16px var(--pf-kpi-green-glow);
}
.v2-pf-kpi-grid .v2-kpi--reload .v2-kpi-reload-hit{
  display:grid;
  grid-template-columns:26px minmax(0,1fr);
  grid-template-rows:auto auto;
  column-gap:8px;
  row-gap:var(--pf-kpi-line-gap);
  align-items:center;
  align-content:center;
  width:100%;
  height:100%;
  min-height:var(--pf-kpi-h,52px);
  margin:0;
  padding:8px 10px;
  border:0;
  border-radius:inherit;
  background:transparent;
  color:var(--pf-kpi-fill-text);
  font-family:inherit;
  text-align:left;
  cursor:pointer;
  appearance:none;
  -webkit-appearance:none;
  box-sizing:border-box;
  transition:filter .15s ease,transform .12s ease;
}
.v2-pf-kpi-grid .v2-kpi--reload .v2-kpi-reload-hit:hover{
  filter:brightness(1.06);
}
.v2-pf-kpi-grid .v2-kpi--reload .v2-kpi-reload-hit:active{
  transform:scale(.985);
  filter:brightness(.96);
}
.v2-pf-kpi-grid .v2-kpi--reload .v2-kpi-reload-hit:focus-visible{
  outline:2px solid rgba(255,255,255,.95);
  outline-offset:2px;
}
.v2-pf-kpi-grid .v2-kpi--reload .v2-kpi-reload-glyph{
  grid-column:1;
  grid-row:1 / span 2;
  align-self:center;
  justify-self:center;
  font-size:20px;
  font-weight:300;
  line-height:1;
  width:26px;
  text-align:center;
}
.v2-pf-kpi-grid .v2-kpi--reload .v2-kpi-reload-label,
.v2-pf-kpi-grid .v2-kpi--reload .v2-kpi-reload-cap-body .v2-kpi-label{
  grid-column:2;
  grid-row:1;
  color:var(--pf-kpi-fill-text);
}
.v2-pf-kpi-grid .v2-kpi--reload .v2-kpi-reload-caption,
.v2-pf-kpi-grid .v2-kpi--reload .v2-kpi-reload-cap-body .v2-kpi-reload-caption{
  grid-column:2;
  grid-row:2;
  color:var(--pf-kpi-fill-text);
}
.v2-pf-kpi-grid .v2-kpi--reload .v2-kpi-reload-btn--icon{
  display:none;
}
.v2-pf-kpi-grid .v2-kpi--reload.v2-reload-state--loading{
  background:linear-gradient(180deg,#ffb84d 0%,#f5921e 100%);
  border-color:#ffb84d;
  box-shadow:0 4px 16px rgba(245,146,30,.35);
}
.v2-pf-kpi-grid .v2-kpi--reload.v2-reload-state--loading .v2-kpi-reload-glyph{
  animation:v2-reload-spin .85s linear infinite;
}
.v2-pf-kpi-grid .v2-kpi--reload.v2-reload-state--idle,
.v2-pf-kpi-grid .v2-kpi--reload.v2-reload-state--ok,
.v2-pf-kpi-grid .v2-kpi--reload.v2-reload-state--stale{
  background:var(--pf-kpi-green-fill);
  border-color:var(--good,#76c77a);
  box-shadow:0 4px 16px var(--pf-kpi-green-glow);
}
.v2-pf-kpi-grid .v2-kpi--reload.v2-reload-state--idle .v2-kpi-reload-label,
.v2-pf-kpi-grid .v2-kpi--reload.v2-reload-state--idle .v2-kpi-reload-caption,
.v2-pf-kpi-grid .v2-kpi--reload.v2-reload-state--ok .v2-kpi-reload-label,
.v2-pf-kpi-grid .v2-kpi--reload.v2-reload-state--ok .v2-kpi-reload-caption,
.v2-pf-kpi-grid .v2-kpi--reload.v2-reload-state--stale .v2-kpi-reload-label,
.v2-pf-kpi-grid .v2-kpi--reload.v2-reload-state--stale .v2-kpi-reload-caption,
.v2-pf-kpi-grid .v2-kpi--reload.v2-reload-state--idle .v2-kpi-reload-glyph,
.v2-pf-kpi-grid .v2-kpi--reload.v2-reload-state--ok .v2-kpi-reload-glyph,
.v2-pf-kpi-grid .v2-kpi--reload.v2-reload-state--stale .v2-kpi-reload-glyph{
  color:var(--pf-kpi-fill-text);
}
.v2-pf-kpi-grid .v2-kpi--reload.v2-reload-state--loading .v2-kpi-reload-label,
.v2-pf-kpi-grid .v2-kpi--reload.v2-reload-state--loading .v2-kpi-reload-caption,
.v2-pf-kpi-grid .v2-kpi--reload.v2-reload-state--loading .v2-kpi-reload-glyph{
  color:#fff;
}
.v2-pf-kpi-grid .v2-kpi--reload.v2-reload-state--stale{
  animation:v2-reload-stale-pulse 1.6s ease-in-out infinite;
}
@keyframes v2-reload-spin{
  to{transform:rotate(360deg)}
}
@keyframes v2-reload-stale-pulse{
  0%,100%{filter:brightness(1)}
  50%{filter:brightness(1.08)}
}
.page-summary--dashboard .v2-pf-kpi-grid--summary .v2-kpi--reload,
.page-portfolio .v2-pf-kpi-grid .v2-kpi--reload{
  z-index:1;
}
.v2-pf-kpi-grid .v2-kpi-value,
.v2-pf-kpi-grid--summary .v2-kpi-value,
.v2-pf-kpi-grid .v2-kpi-pct,
.v2-pf-kpi-grid--summary .v2-kpi-pct{
  color:inherit;
}
.v2-pf-kpi-grid .v2-pf-date-wheel-card .laconic-overlay-picker__trigger,
.v2-pf-kpi-grid--summary .v2-pf-date-wheel-card .laconic-overlay-picker__trigger,
.v2-pf-kpi-grid .v2-pf-date-picker-trigger,
.v2-pf-kpi-grid--summary .v2-pf-date-picker-trigger{
  display:block;
  width:100%;
  max-width:100%;
  border:0;
  background:transparent;
  color:inherit;
  cursor:pointer;
  appearance:none;
  -webkit-appearance:none;
}
.v2-pf-kpi-grid .v2-kpi-value-row{
  display:flex;
  flex-wrap:nowrap;
  align-items:baseline;
  gap:8px;
  min-height:var(--lop-trigger-h,24.64px);
  flex:0 0 auto;
}
.v2-pf-kpi-grid .v2-kpi-value-row--pnl{
  gap:14px;
}
.v2-pf-kpi-grid .v2-kpi-value--nav-sigma,
.v2-pf-kpi-grid--summary .v2-kpi-value--nav-sigma{
  font-size:0.88em;
  line-height:1.2;
  opacity:0.94;
}
.v2-pf-kpi-grid .v2-kpi--count,
.v2-pf-kpi-grid--summary .v2-kpi--count{
  max-width:100%;
}
.v2-pf-kpi-grid .v2-kpi-value-row .v2-kpi-value,
.v2-pf-kpi-grid .v2-kpi-value-row .v2-kpi-pct{
  flex:0 1 auto;
  min-width:0;
}
.v2-pf-kpi-grid .v2-kpi--metric .v2-kpi-label,
.v2-pf-kpi-grid .v2-kpi--metric .v2-kpi-value,
.v2-pf-kpi-grid .v2-kpi--metric .v2-kpi-pct,
.v2-pf-kpi-grid .v2-kpi--metric .v2-kpi-reload-caption{
  color:var(--pf-kpi-fill-text);
}
.v2-pf-kpi-grid .v2-kpi--nav{
  background:var(--pf-kpi-orange-fill,linear-gradient(180deg,var(--orange-bright,var(--accent-2,#ffad52)) 0%,var(--orange,var(--accent,#ff9933)) 100%));
  border-color:var(--pf-kpi-orange-bright,var(--orange-bright,var(--accent-2,#ffad52)));
  box-shadow:0 4px 14px var(--orange-glow,rgba(255,153,51,.24));
}
.v2-pf-kpi-grid .v2-kpi--pnl-pos{
  background:var(--pf-kpi-green-fill);
  border-color:var(--good,#76c77a);
  box-shadow:0 4px 16px var(--pf-kpi-green-glow);
}
.v2-pf-kpi-grid .v2-kpi--pnl-neg{
  background:var(--pf-kpi-red,var(--bad,#ef5350));
  border-color:var(--pf-kpi-red,var(--bad,#ef5350));
}
.v2-pf-kpi-grid .v2-kpi--pnl-zero{
  background:#6b6b6b;
  border-color:#6b6b6b;
}
.v2-pf-kpi-grid .v2-kpi--count{
  background:var(--pf-kpi-blue);
  border-color:var(--pf-kpi-blue);
}
html.theme-dark .v2-pf-kpi-grid .v2-kpi--pnl-pos{
  background:var(--pf-kpi-green-fill);
  border-color:var(--good,#76c77a);
}
html.theme-dark .v2-pf-kpi-grid .v2-kpi--pnl-zero{
  background:#5a5a5a;
  border-color:#5a5a5a;
}
html.theme-dark .v2-pf-kpi-grid .v2-kpi--count{
  background:var(--pf-kpi-blue-dim);
  border-color:var(--pf-kpi-blue-dim);
}
/* Пустой scope (портфель выключен): все KPI-метрики — нейтральная серая, как «Прирост» */
.v2-pf-kpi-grid--scope-empty .v2-kpi--metric:not(.v2-kpi--reload),
.v2-pf-kpi-grid--scope-empty .v2-pf-date-wheel-card{
  background:#6b6b6b!important;
  border-color:#6b6b6b!important;
  box-shadow:none!important;
}
.v2-pf-kpi-grid--scope-empty .v2-kpi--metric:not(.v2-kpi--reload) .v2-kpi-label,
.v2-pf-kpi-grid--scope-empty .v2-kpi--metric:not(.v2-kpi--reload) .v2-kpi-value,
.v2-pf-kpi-grid--scope-empty .v2-pf-date-wheel-card .laconic-overlay-picker__trigger,
.v2-pf-kpi-grid--scope-empty .v2-pf-date-wheel-card .v2-pf-date-picker-trigger{
  color:var(--muted)!important;
}
html.theme-dark .v2-pf-kpi-grid--scope-empty .v2-kpi--metric:not(.v2-kpi--reload),
html.theme-dark .v2-pf-kpi-grid--scope-empty .v2-pf-date-wheel-card{
  background:#5a5a5a!important;
  border-color:#5a5a5a!important;
}
/* Универсальные виджеты главной: пустой портфель — каркас и тулбар, без данных */
.v2-dash-widgets--empty .v2-chart-surface,
.v2-dash-widget.v2-dash-widgets--empty .v2-chart-surface,
.v2-dash-widgets--empty .v2-alfa-risk-host,
.v2-dash-widget.v2-dash-widgets--empty .v2-alfa-risk-host,
.v2-dash-widgets--empty .v2-alfa-movers-host,
.v2-dash-widget.v2-dash-widgets--empty .v2-alfa-movers-host{
  min-height:min(220px,42vh);
}
.v2-dash-widget-empty{
  margin:0;
  padding:20px 16px;
  text-align:center;
  color:var(--muted);
  font-size:13px;
  line-height:1.4;
}
.v2-dash-widgets--empty .v2-wf-toolbar button,
.v2-dash-widget.v2-dash-widgets--empty .v2-wf-toolbar button,
.v2-dash-widgets--empty .v2-wf-filter-hero button,
.v2-wf-filter-hero.v2-dash-widgets--empty button,
.v2-dash-widgets--empty .v2-anl-period-btn,
.v2-dash-widget.v2-dash-widgets--empty .v2-anl-period-btn{
  pointer-events:none;
  opacity:0.42;
}
.v2-dash-widgets--empty .v2-anl-card .v2-dash-widget-empty,
.v2-dash-widget.v2-dash-widgets--empty .v2-anl-card .v2-dash-widget-empty{
  padding:16px 12px;
}
/* Портфель: «Дата среза» — та же высота, что у СЧА/позиций; ▼ напротив подписи */
.page-portfolio .v2-pf-kpi-grid .laconic-overlay-picker.v2-pf-date-wheel-card{
  justify-self:stretch;
  align-self:stretch;
}
.page-portfolio .v2-pf-date-wheel-card .laconic-overlay-picker__cap,
.page-summary--dashboard .v2-pf-date-wheel-card .laconic-overlay-picker__cap,
.page-portfolio .v2-widget-layout-card .laconic-overlay-picker__cap,
.page-summary--dashboard .v2-widget-layout-card .laconic-overlay-picker__cap{
  display:grid;
  grid-template-columns:var(--pf-date-caret-col,26px) minmax(0,1fr);
  column-gap:var(--pf-date-cap-gap,8px);
  row-gap:var(--pf-kpi-line-gap);
  align-items:center;
  position:static;
  margin:0;
  padding:0;
  min-height:0;
  font-size:var(--pf-kpi-line-size);
  font-weight:var(--pf-kpi-line-weight);
  line-height:var(--pf-kpi-line-lh);
  letter-spacing:normal;
  text-transform:none;
  color:inherit;
}
.page-portfolio .v2-pf-date-wheel-card .laconic-overlay-picker__cap-body,
.page-summary--dashboard .v2-pf-date-wheel-card .laconic-overlay-picker__cap-body{
  display:contents;
}
.page-portfolio .v2-pf-date-wheel-card .laconic-overlay-picker__cap .v2-kpi-label,
.page-summary--dashboard .v2-pf-date-wheel-card .laconic-overlay-picker__cap .v2-kpi-label{
  margin:0;
  display:block;
  grid-column:2;
  grid-row:1;
  min-width:0;
}
.page-portfolio .v2-pf-date-wheel-card .laconic-overlay-picker__cap-body .laconic-overlay-picker__trigger,
.page-summary--dashboard .v2-pf-date-wheel-card .laconic-overlay-picker__cap-body .laconic-overlay-picker__trigger,
.page-portfolio .v2-pf-date-wheel-card .v2-pf-date-picker-trigger,
.page-summary--dashboard .v2-pf-date-wheel-card .v2-pf-date-picker-trigger{
  grid-column:2;
  grid-row:2;
  margin:0;
  padding:0;
}
.page-portfolio .v2-pf-date-wheel-card .laconic-overlay-picker__toggle,
.page-summary--dashboard .v2-pf-date-wheel-card .laconic-overlay-picker__toggle{
  position:static;
  top:auto;
  right:auto;
  transform:none;
  z-index:2;
  grid-column:1;
  grid-row:1 / span 2;
  justify-self:start;
  align-self:center;
  width:var(--pf-date-caret-col,26px);
  min-width:var(--pf-date-caret-col,26px);
  padding-left:2px;
  box-sizing:border-box;
  height:var(--lop-cap-h);
  min-height:0;
  margin:0;
  padding:0;
  flex-shrink:0;
}
.page-portfolio .v2-pf-date-wheel-card .laconic-overlay-picker__toggle:not(.is-open),
.page-summary--dashboard .v2-pf-date-wheel-card .laconic-overlay-picker__toggle:not(.is-open){
  transform:none;
}
.page-portfolio .v2-pf-date-wheel-card:not(.is-open) .laconic-overlay-picker__host{
  min-height:0;
  flex:0 0 auto;
}
.page-portfolio .v2-pf-date-wheel-card:not(.is-open) .laconic-overlay-picker__size-anchor{
  display:none;
}
/* Дата среза открыта: без зелёной/красной шапки — оранжевая рамка (см. laconic-overlay-picker.css) */
.page-portfolio .v2-pf-kpi-grid .laconic-overlay-picker.v2-pf-date-wheel-card.v2-kpi.is-open:not(.v2-widget-layout-card):not(.v2-slice-date-card--inline),
.page-summary--dashboard .v2-pf-kpi-grid--summary .laconic-overlay-picker.v2-pf-date-wheel-card.v2-kpi.is-open:not(.v2-widget-layout-card):not(.v2-slice-date-card--inline){
  border:var(--lop-border-w,2px) solid var(--filter-chip-active-border,var(--accent,var(--orange,#df7f25)));
  box-shadow:0 10px 32px rgba(0,0,0,.14),0 2px 8px rgba(0,0,0,.08);
}
.page-portfolio .v2-pf-date-wheel-card.v2-kpi.is-date-current.is-open:not(.v2-slice-date-card--inline),
.page-portfolio .v2-pf-date-wheel-card.v2-kpi.is-date-stale.is-open:not(.v2-slice-date-card--inline){
  background:var(--laconic-card-bg);
  border-color:var(--accent,var(--orange,#df7f25));
}
html.theme-dark .page-portfolio .v2-pf-date-wheel-card.v2-kpi.is-date-current.is-open:not(.v2-slice-date-card--inline),
html.theme-dark .page-portfolio .v2-pf-date-wheel-card.v2-kpi.is-date-stale.is-open:not(.v2-slice-date-card--inline){
  background:var(--color-twilight);
  border-color:var(--orange-bright,var(--accent-2));
}
.page-portfolio .v2-pf-date-wheel-card.is-open:not(.v2-slice-date-card--inline) .laconic-overlay-picker__cap,
.page-portfolio .v2-pf-date-wheel-card.is-open:not(.v2-slice-date-card--inline) .laconic-overlay-picker__cap .v2-kpi-label,
.page-portfolio .v2-pf-date-wheel-card.is-open:not(.v2-slice-date-card--inline) .laconic-overlay-picker__toggle,
.page-portfolio .v2-pf-date-wheel-card.is-open:not(.v2-slice-date-card--inline) .v2-pf-date-picker-trigger{
  color:var(--muted);
}
html.theme-dark .page-portfolio .v2-pf-date-wheel-card.is-open:not(.v2-slice-date-card--inline) .laconic-overlay-picker__cap,
html.theme-dark .page-portfolio .v2-pf-date-wheel-card.is-open:not(.v2-slice-date-card--inline) .laconic-overlay-picker__cap .v2-kpi-label,
html.theme-dark .page-portfolio .v2-pf-date-wheel-card.is-open:not(.v2-slice-date-card--inline) .laconic-overlay-picker__toggle,
html.theme-dark .page-portfolio .v2-pf-date-wheel-card.is-open:not(.v2-slice-date-card--inline) .v2-pf-date-picker-trigger{
  color:var(--ivory-400);
}
/* Свернута: сплошная зелёная / красная карточка, чёрный текст */
.page-portfolio .v2-pf-date-wheel-card.v2-kpi.is-date-current:not(.is-open){
  background:var(--pf-kpi-green-fill);
  border-color:var(--good,#76c77a);
  box-shadow:0 4px 16px var(--pf-kpi-green-glow);
}
.page-portfolio .v2-pf-date-wheel-card.is-date-current:not(.is-open) .laconic-overlay-picker__cap,
.page-portfolio .v2-pf-date-wheel-card.is-date-current:not(.is-open) .laconic-overlay-picker__cap .v2-kpi-label,
.page-portfolio .v2-pf-date-wheel-card.is-date-current:not(.is-open) .laconic-overlay-picker__toggle,
.page-portfolio .v2-pf-date-wheel-card.is-date-current:not(.is-open) .v2-pf-date-picker-trigger{
  color:var(--pf-kpi-fill-text,var(--color-onyx,#0f0f0f));
}
.page-portfolio .v2-pf-date-wheel-card.v2-kpi.is-date-stale:not(.is-open){
  background:var(--pf-kpi-red,var(--bad,#ef5350));
  border-color:var(--pf-kpi-red,var(--bad,#ef5350));
}
.page-portfolio .v2-pf-date-wheel-card.is-date-stale:not(.is-open) .laconic-overlay-picker__cap,
.page-portfolio .v2-pf-date-wheel-card.is-date-stale:not(.is-open) .laconic-overlay-picker__cap .v2-kpi-label,
.page-portfolio .v2-pf-date-wheel-card.is-date-stale:not(.is-open) .laconic-overlay-picker__toggle,
.page-portfolio .v2-pf-date-wheel-card.is-date-stale:not(.is-open) .v2-pf-date-picker-trigger{
  color:var(--pf-kpi-fill-text,var(--color-onyx,#0f0f0f));
}
html.theme-dark .page-portfolio .v2-pf-date-wheel-card.v2-kpi.is-date-current:not(.is-open){
  background:var(--pf-kpi-green-fill);
  border-color:var(--good,#76c77a);
}
html.theme-dark .page-portfolio .v2-pf-date-wheel-card.v2-kpi.is-date-stale:not(.is-open){
  background:var(--pf-kpi-red,var(--bad,#ef5350));
  border-color:var(--pf-kpi-red,var(--bad,#ef5350));
}

/* Главная KPI: дата среза — как на портфеле */
.page-summary--dashboard .v2-pf-kpi-grid--summary .laconic-overlay-picker.v2-pf-date-wheel-card{
  justify-self:stretch;
  align-self:stretch;
}
.page-summary--dashboard .v2-pf-date-wheel-card:not(.is-open) .laconic-overlay-picker__host{
  min-height:0;
  flex:0 0 auto;
}
.page-summary--dashboard .v2-pf-date-wheel-card:not(.is-open) .laconic-overlay-picker__size-anchor{
  display:none;
}
/* Дата среза открыта на главной — как на портфеле */
.page-summary--dashboard .v2-pf-date-wheel-card.v2-kpi.is-date-current.is-open:not(.v2-slice-date-card--inline),
.page-summary--dashboard .v2-pf-date-wheel-card.v2-kpi.is-date-stale.is-open:not(.v2-slice-date-card--inline){
  background:var(--laconic-card-bg);
  border-color:var(--accent,var(--orange,#df7f25));
}
html.theme-dark .page-summary--dashboard .v2-pf-date-wheel-card.v2-kpi.is-date-current.is-open:not(.v2-slice-date-card--inline),
html.theme-dark .page-summary--dashboard .v2-pf-date-wheel-card.v2-kpi.is-date-stale.is-open:not(.v2-slice-date-card--inline){
  background:var(--color-twilight);
  border-color:var(--orange-bright,var(--accent-2));
}
.page-summary--dashboard .v2-pf-date-wheel-card.is-open:not(.v2-slice-date-card--inline) .laconic-overlay-picker__cap,
.page-summary--dashboard .v2-pf-date-wheel-card.is-open:not(.v2-slice-date-card--inline) .laconic-overlay-picker__cap .v2-kpi-label,
.page-summary--dashboard .v2-pf-date-wheel-card.is-open:not(.v2-slice-date-card--inline) .laconic-overlay-picker__toggle,
.page-summary--dashboard .v2-pf-date-wheel-card.is-open:not(.v2-slice-date-card--inline) .v2-pf-date-picker-trigger{
  color:var(--muted);
}
html.theme-dark .page-summary--dashboard .v2-pf-date-wheel-card.is-open:not(.v2-slice-date-card--inline) .laconic-overlay-picker__cap,
html.theme-dark .page-summary--dashboard .v2-pf-date-wheel-card.is-open:not(.v2-slice-date-card--inline) .laconic-overlay-picker__cap .v2-kpi-label,
html.theme-dark .page-summary--dashboard .v2-pf-date-wheel-card.is-open:not(.v2-slice-date-card--inline) .laconic-overlay-picker__toggle,
html.theme-dark .page-summary--dashboard .v2-pf-date-wheel-card.is-open:not(.v2-slice-date-card--inline) .v2-pf-date-picker-trigger{
  color:var(--ivory-400);
}
/* Свернута: сплошная зелёная / красная карточка, чёрный текст */
.page-summary--dashboard .v2-pf-date-wheel-card.v2-kpi.is-date-current:not(.is-open){
  background:var(--pf-kpi-green-fill);
  border-color:var(--good,#76c77a);
  box-shadow:0 4px 16px var(--pf-kpi-green-glow);
}
.page-summary--dashboard .v2-pf-date-wheel-card.is-date-current:not(.is-open) .laconic-overlay-picker__cap,
.page-summary--dashboard .v2-pf-date-wheel-card.is-date-current:not(.is-open) .laconic-overlay-picker__cap .v2-kpi-label,
.page-summary--dashboard .v2-pf-date-wheel-card.is-date-current:not(.is-open) .laconic-overlay-picker__toggle,
.page-summary--dashboard .v2-pf-date-wheel-card.is-date-current:not(.is-open) .v2-pf-date-picker-trigger{
  color:var(--pf-kpi-fill-text,var(--color-onyx,#0f0f0f));
}
.page-summary--dashboard .v2-pf-date-wheel-card.v2-kpi.is-date-stale:not(.is-open){
  background:var(--pf-kpi-red,var(--bad,#ef5350));
  border-color:var(--pf-kpi-red,var(--bad,#ef5350));
}
.page-summary--dashboard .v2-pf-date-wheel-card.is-date-stale:not(.is-open) .laconic-overlay-picker__cap,
.page-summary--dashboard .v2-pf-date-wheel-card.is-date-stale:not(.is-open) .laconic-overlay-picker__cap .v2-kpi-label,
.page-summary--dashboard .v2-pf-date-wheel-card.is-date-stale:not(.is-open) .laconic-overlay-picker__toggle,
.page-summary--dashboard .v2-pf-date-wheel-card.is-date-stale:not(.is-open) .v2-pf-date-picker-trigger{
  color:var(--pf-kpi-fill-text,var(--color-onyx,#0f0f0f));
}
html.theme-dark .page-summary--dashboard .v2-pf-date-wheel-card.v2-kpi.is-date-current:not(.is-open){
  background:var(--pf-kpi-green-fill);
  border-color:var(--good,#76c77a);
}
html.theme-dark .page-summary--dashboard .v2-pf-date-wheel-card.v2-kpi.is-date-stale:not(.is-open){
  background:var(--pf-kpi-red,var(--bad,#ef5350));
  border-color:var(--pf-kpi-red,var(--bad,#ef5350));
}
/* ── Тёмная тема ────────────────────────────────────────────────── */
html.theme-dark{
  --bg:var(--color-liquorice);
  --card-bg:var(--color-twilight);
  --laconic-card-bg:var(--color-twilight);
  --panel:var(--color-twilight);
  --panel-2:var(--color-twilight);
}
html.theme-dark .app-shell{background:var(--color-liquorice)}
html.theme-dark .sidebar-brand-card,
html.theme-dark .sidebar,
html.theme-dark .sidebar-foot-card{
  background:var(--color-twilight);
  border:none;
}
html.theme-dark .app-shell.sidebar--expanded .sidebar-foot-card{
  box-shadow:var(--shadow-card);
}
html.theme-dark .sidebar-foot-card__label{
  color:var(--ivory-400);
}
html.theme-dark .sidebar-foot-card__build,
html.theme-dark .sidebar-foot-card__note,
html.theme-dark .sidebar-foot-card__greeting{
  color:var(--ivory-200);
}
html.theme-dark .content{
  background:transparent;
  border:none;
  box-shadow:none;
  margin:0;
  min-height:0;
  border-radius:0;
}
@media (min-width:901px){
  html.theme-dark .content{
    margin:0;
    border:none;
    border-radius:0;
    min-height:0;
    box-shadow:none;
  }
}
/* Без контуров у карточек (перебивает theme-dark.css) */
html.theme-dark .card,
html.theme-dark section.card,
html.theme-dark .page.card,
html.theme-dark .page-portfolio .card,
html.theme-dark .page-settings .card,
html.theme-dark .page-admin .card,
html.theme-dark .page-account .card,
html.theme-dark .page-changelog .card,
html.theme-dark .card .card,
html.theme-dark .portfolio-updates-panel,
html.theme-dark .portfolio-summary-strip-wrap,
html.theme-dark .report-kpi,
html.theme-dark .report-mini-table-wrap,
html.theme-dark .report-chart-wrap,
html.theme-dark .control-table,
html.theme-dark .hint-dd__body,
html.theme-dark .v2-alfa-waterfall-host,
html.theme-dark .dev-mod-main-risk.card,
html.theme-dark details.card{
  background:var(--color-twilight);
  border:none;
  box-shadow:none;
}
html.theme-dark .card > .card-title,
html.theme-dark .card .card-title,
html.theme-dark .metric-title{
  border-left:none;
  padding-left:0;
  margin-left:0;
}
html.theme-dark .v2-alfa-waterfall-host,
html.theme-dark .v2-chart-surface{
  background:transparent;
}
html.theme-dark .v2-wf-toolbar,
html.theme-dark .v2-wf-toolbar{border-top:none}
html.theme-dark .v2-wf-filter-hero,
html.theme-dark .v2-wf-filter-card .v2-period-group,
html.theme-dark .v2-wf-filter-card .v2-gran-group,
html.theme-dark .v2-wf-filter-card .v2-scale-group,
html.theme-dark .v2-wf-filter-card .v2-metric-group,
html.theme-dark .v2-wf-filter-card .v2-display-group{
  background:transparent;
  border:none;
  box-shadow:none;
}
html.theme-dark .widget-filter-tabs,
html.theme-dark .summary-funds-tabs{
  background:transparent;
  border:none;
}
html.theme-dark .v2-pf-date-btn{
  background:transparent;
  border:1.5px solid transparent;
}
html.theme-dark .v2-risk-kpi-tile{
  background:rgba(0,0,0,0.2);
  border:none;
}
html.theme-dark .side-link:not(:hover){
  color:var(--ivory-400,#b8b8b8);
}
html.theme-dark .side-link .nav-ico{
  color:inherit;
}
html.theme-dark #tab-summary:checked ~ .app-shell .sidebar .s-summary,
html.theme-dark #tab-portfolio:checked ~ .app-shell .sidebar .s-portfolio,
html.theme-dark #tab-account:checked ~ .app-shell .sidebar .s-account{
  background:rgba(255,153,51,.08);
  border-color:var(--orange-bright,var(--accent));
  box-shadow:var(--filter-chip-active-ring,0 0 0 1px rgba(255,153,51,.18));
  color:var(--ivory-100,#f5f5f5);
}
html.theme-dark #tab-summary:checked ~ .app-shell .sidebar .s-summary .nav-ico,
html.theme-dark #tab-portfolio:checked ~ .app-shell .sidebar .s-portfolio .nav-ico,
html.theme-dark #tab-account:checked ~ .app-shell .sidebar .s-account .nav-ico,
html.theme-dark #tab-summary:checked ~ .app-shell .sidebar .s-summary .nav-txt,
html.theme-dark #tab-portfolio:checked ~ .app-shell .sidebar .s-portfolio .nav-txt,
html.theme-dark #tab-account:checked ~ .app-shell .sidebar .s-account .nav-txt{
  color:var(--orange-bright,var(--accent-2));
}
/* Staff only + Журнал: только белый контур (перебивает любые оранжевые правила выше) */
#tab-settings:checked ~ .app-shell .sidebar .side-link.s-settings,
#tab-changelog:checked ~ .app-shell .sidebar .side-link.s-changelog,
html.theme-dark #tab-settings:checked ~ .app-shell .sidebar .side-link.s-settings,
html.theme-dark #tab-changelog:checked ~ .app-shell .sidebar .side-link.s-changelog{
  background:transparent;
  border:2px solid #fff;
  box-shadow:0 0 0 1px rgba(255,255,255,.45),0 0 14px rgba(255,255,255,.2);
  color:#fff;
  font-weight:600;
}
#tab-settings:checked ~ .app-shell .sidebar .side-link.s-settings .nav-ico,
#tab-settings:checked ~ .app-shell .sidebar .side-link.s-settings .nav-ico svg,
#tab-changelog:checked ~ .app-shell .sidebar .side-link.s-changelog .nav-ico,
#tab-changelog:checked ~ .app-shell .sidebar .side-link.s-changelog .nav-ico svg,
html.theme-dark #tab-settings:checked ~ .app-shell .sidebar .side-link.s-settings .nav-ico,
html.theme-dark #tab-settings:checked ~ .app-shell .sidebar .side-link.s-settings .nav-ico svg,
html.theme-dark #tab-changelog:checked ~ .app-shell .sidebar .side-link.s-changelog .nav-ico,
html.theme-dark #tab-changelog:checked ~ .app-shell .sidebar .side-link.s-changelog .nav-ico svg{
  color:#fff;
  stroke:#fff;
}

.page-summary--dashboard .v2-dash-details{
  margin:0;
  border:none;
  box-shadow:none;
}
.page-summary--dashboard .v2-dash-details__summary{
  background:transparent;
  border:none;
  border-bottom:1px solid var(--line);
}
.page-summary--dashboard .v2-compact-filters .v2-filter-label{
  font-size:10px;
  text-transform:uppercase;
  letter-spacing:0.05em;
  min-width:64px;
}
.page-summary--dashboard .v2-dash-widget--filters .v2-compact-filters--split{
  display:flex;
  flex-direction:row;
  flex-wrap:wrap;
  align-items:center;
  gap:8px 20px;
}
.page-summary--dashboard .v2-dash-widget--filters .v2-compact-filters--split .v2-filter-row{
  display:flex;
  flex:1 1 0;
  align-items:center;
  gap:8px;
  min-width:min(280px,100%);
  margin-bottom:0;
}
.page-summary--dashboard .v2-dash-widget--filters .v2-compact-filters--split .v2-filter-tabs-host{
  flex:1 1 auto;
  min-width:0;
}

/* Первый заголовок карточки — вплотную к верхнему левому углу внутри padding */
.card > .card-laconic-head--compact:first-child,
.card > header.card-laconic-head--compact:first-child{
  margin-top:0;
}
.card-laconic-head .card-title{
  font-family:system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
}

/* Главная: перебить крупные заголовки из app.css */
#tab-summary:checked ~ .app-shell .page-summary--dashboard .card .card-title,
#tab-summary:checked ~ .app-shell .page-summary--dashboard .v2-anl-card-title{
  font-size:var(--card-cap-size);
  font-weight:var(--card-cap-weight);
  letter-spacing:var(--card-cap-tracking);
  line-height:1.25;
  text-transform:uppercase;
  color:var(--card-cap-color);
}
#tab-summary:checked ~ .app-shell .page-summary--dashboard .v2-dash-widget__title{
  font-size:12px;
  font-weight:700;
  letter-spacing:0.06em;
  color:var(--v2-widget-accent);
}
html.theme-dark #tab-summary:checked ~ .app-shell .page-summary--dashboard .card .card-title,
html.theme-dark #tab-summary:checked ~ .app-shell .page-summary--dashboard .v2-anl-card-title{
  color:var(--ivory-400);
}
html.theme-dark #tab-summary:checked ~ .app-shell .page-summary--dashboard .v2-dash-widget__title{
  color:var(--v2-widget-accent);
}

/* Настройки / кабинет — обычные заголовки секций */
.page-settings .card .card-title,
.page-admin .card .card-title,
.page-account .account-shell .card-title,
.page-changelog .card .card-title,
.page-settings > .topbar .page-title,
.page-admin > .topbar .page-title{
  text-transform:none;
  font-size:var(--font-card-title);
  font-weight:600;
  letter-spacing:normal;
  line-height:1.3;
  color:var(--text);
}
html.theme-dark .page-settings .card .card-title,
html.theme-dark .page-account .account-shell .card-title,
html.theme-dark .page-changelog .card .card-title{
  color:var(--ivory-100);
}

@media (max-width:900px){
  .card-laconic-head{
    flex-wrap:wrap;
  }
  .card-laconic-tools{
    flex:1 1 100%;
    justify-content:flex-start;
  }
}

/* Пока открыт список столбцов: карточка портфеля выше KPI — иначе зелёная/красная таблетки рисуются поверх панели */
.page-portfolio.pf-portfolio-cols-open .v2-pf-hero,
.page-portfolio.pf-portfolio-cols-open .v2-pf-hero-body{
  z-index:0;
}
.page-portfolio.pf-portfolio-cols-open .v2-pf-filter-hero,
.page-summary--dashboard.pf-portfolio-cols-open .v2-pf-filter-hero{
  z-index:200;
}
.page-portfolio.pf-sources-filter-open .dev-mod-portfolio-filters,
.page-summary--dashboard.pf-sources-filter-open .dev-mod-main-filters{
  position:relative;
  z-index:400;
}
.page-summary--dashboard.pf-sources-filter-open .v2-wf-filter-hero,
.page-summary--dashboard.pf-sources-filter-open #v2WfToolbar{
  position:relative;
  z-index:1;
}
.page-portfolio .v2-pf-filter-card--sources .v2-dash-widget__body,
.page-summary--dashboard .v2-pf-filter-card--sources .v2-dash-widget__body{
  position:relative;
  flex:0 0 auto;
}
.page-portfolio .v2-pf-filter-card--sources .v2-portfolio-filter-cluster--sources,
.page-summary--dashboard .v2-pf-filter-card--sources .v2-portfolio-filter-cluster--sources{
  display:flex;
  flex-direction:column;
  align-items:stretch;
  gap:0;
  flex-wrap:nowrap;
  min-width:0;
  width:100%;
  max-width:100%;
}
.page-portfolio .v2-pf-filter-card--sources .v2-pf-sources-toolbar,
.page-summary--dashboard .v2-pf-filter-card--sources .v2-pf-sources-toolbar{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:6px;
  width:100%;
  min-width:0;
}
.page-portfolio .v2-pf-filter-card--sources .v2-pf-sources-toolbar .v2-filter-tabs-host,
.page-summary--dashboard .v2-pf-filter-card--sources .v2-pf-sources-toolbar .v2-filter-tabs-host{
  flex:1 1 auto;
  min-width:0;
}
.page-portfolio .v2-pf-filter-card--sources .v2-pf-sources-toolbar .pf-v2-add-anchor,
.page-summary--dashboard .v2-pf-filter-card--sources .v2-pf-sources-toolbar .pf-v2-add-anchor{
  flex:0 0 auto;
}
.page-portfolio .v2-pf-filter-card--sources .v2-portfolio-add-wrap,
.page-summary--dashboard .v2-pf-filter-card--sources .v2-portfolio-add-wrap{
  width:auto;
  max-width:100%;
  position:relative;
  z-index:1;
  overflow:visible;
}
.page-portfolio .v2-pf-filter-card--sources > .v2-pf-sources-expand-slot,
.page-summary--dashboard .v2-pf-filter-card--sources > .v2-pf-sources-expand-slot{
  display:none;
  position:absolute;
  left:0;
  right:0;
  top:100%;
  width:100%;
  max-width:100%;
  min-width:0;
  margin:0;
  padding:0;
  overflow:hidden;
  z-index:12;
  pointer-events:none;
  box-sizing:border-box;
}
.page-portfolio .v2-pf-filter-card--sources > .v2-pf-sources-expand-slot.is-open,
.page-summary--dashboard .v2-pf-filter-card--sources > .v2-pf-sources-expand-slot.is-open{
  display:block;
  pointer-events:auto;
}
.page-portfolio .v2-pf-filter-card--sources > .v2-pf-sources-expand-slot .laconic-overlay-picker.v2-pf-sources-expand-card,
.page-summary--dashboard .v2-pf-filter-card--sources > .v2-pf-sources-expand-slot .laconic-overlay-picker.v2-pf-sources-expand-card,
.page-portfolio .v2-pf-filter-card--sources > .v2-pf-sources-expand-slot .laconic-overlay-picker__host,
.page-summary--dashboard .v2-pf-filter-card--sources > .v2-pf-sources-expand-slot .laconic-overlay-picker__host,
.page-portfolio .v2-pf-filter-card--sources > .v2-pf-sources-expand-slot .laconic-overlay-picker__panel,
.page-summary--dashboard .v2-pf-filter-card--sources > .v2-pf-sources-expand-slot .laconic-overlay-picker__panel,
.page-portfolio .v2-pf-filter-card--sources > .v2-pf-sources-expand-slot .pf-cols-lop-panel-body,
.page-summary--dashboard .v2-pf-filter-card--sources > .v2-pf-sources-expand-slot .pf-cols-lop-panel-body{
  width:100%;
  max-width:100%;
  min-width:0;
  box-sizing:border-box;
}
.page-portfolio .v2-pf-filter-card--sources > .v2-pf-sources-expand-slot .laconic-overlay-picker.v2-pf-sources-expand-card,
.page-summary--dashboard .v2-pf-filter-card--sources > .v2-pf-sources-expand-slot .laconic-overlay-picker.v2-pf-sources-expand-card{
  display:flex;
  flex-direction:column;
  align-items:stretch;
}
.page-portfolio .v2-pf-filter-card--sources > .v2-pf-sources-expand-slot .pf-cols-wheel-label,
.page-summary--dashboard .v2-pf-filter-card--sources > .v2-pf-sources-expand-slot .pf-cols-wheel-label{
  overflow:hidden;
  text-overflow:ellipsis;
}
.page-portfolio .v2-pf-filter-card--sources.v2-pf-filter-card--sources-expand-open,
.page-summary--dashboard .v2-pf-filter-card--sources.v2-pf-filter-card--sources-expand-open{
  --v2-sources-expand-border:var(--v2-sources-card-border-w) solid var(--filter-chip-active-border,var(--accent,var(--orange,#df7f25)));
  z-index:1200;
  align-self:start;
  height:auto;
  max-height:none;
  min-height:var(--lop-card-min-h);
  overflow:visible;
  border:var(--v2-sources-expand-border);
  border-bottom:none;
  border-top:var(--v2-sources-expand-border);
  border-top-left-radius:var(--v2-capital-radius,var(--laconic-radius,10px));
  border-top-right-radius:var(--v2-capital-radius,var(--laconic-radius,10px));
  border-bottom-left-radius:0;
  border-bottom-right-radius:0;
  box-shadow:0 4px 16px rgba(0,0,0,.08);
}
html.theme-dark .page-portfolio .v2-pf-filter-card--sources.v2-pf-filter-card--sources-expand-open,
html.theme-dark .page-summary--dashboard .v2-pf-filter-card--sources.v2-pf-filter-card--sources-expand-open{
  border-color:var(--orange-bright,var(--accent-2));
  box-shadow:0 10px 28px rgba(0,0,0,.38);
}
.page-portfolio .v2-pf-filter-card--sources.v2-pf-filter-card--sources-expand-open .v2-dash-widget__body,
.page-summary--dashboard .v2-pf-filter-card--sources.v2-pf-filter-card--sources-expand-open .v2-dash-widget__body{
  overflow:visible;
}
.page-portfolio .v2-pf-filter-card--sources .v2-portfolio-filter-cluster .v2-filter-tabs-host,
.page-summary--dashboard .v2-pf-filter-card--sources .v2-portfolio-filter-cluster .v2-filter-tabs-host{
  width:100%;
  max-width:100%;
  min-width:0;
}
.page-portfolio .v2-pf-filter-card--sources .v2-portfolio-filter-cluster .pf-v2-add-anchor,
.page-summary--dashboard .v2-pf-filter-card--sources .v2-portfolio-filter-cluster .pf-v2-add-anchor{
  flex:0 0 auto;
}
.page-portfolio .v2-pf-filter-card--sources,
.page-summary--dashboard .v2-pf-filter-card--sources{
  position:relative;
  z-index:40;
  overflow:visible;
}
/* Пустой портфель: подсказка подключить источник — оранжевая рамка */
.page-portfolio .v2-pf-filter-card--sources.v2-pf-filter-card--portfolio-empty,
.page-summary--dashboard .v2-pf-filter-card--sources.v2-pf-filter-card--portfolio-empty{
  border:var(--lop-border-w,2px) solid var(--filter-chip-active-border,var(--accent,var(--orange,#df7f25)));
  box-shadow:0 0 0 1px rgba(223,127,37,.12);
}
html.theme-dark .page-portfolio .v2-pf-filter-card--sources.v2-pf-filter-card--portfolio-empty,
html.theme-dark .page-summary--dashboard .v2-pf-filter-card--sources.v2-pf-filter-card--portfolio-empty{
  border-color:var(--orange-bright,var(--accent-2));
  box-shadow:0 0 0 1px rgba(255,173,82,.18);
}
.page-portfolio.pf-portfolio-cols-open .v2-pf-body{
  z-index:1;
}
.page-portfolio .v2-pf-filter-card--accounts,
.page-summary--dashboard .v2-pf-filter-card--accounts{
  position:relative;
  z-index:40;
  overflow:visible;
}
/* Портфель: фильтры выше KPI и таблицы — клики по счетам не перекрываются */
.page-portfolio .v2-pf-hero{
  position:relative;
  z-index:1;
  overflow:visible;
}
.page-portfolio .v2-pf-hero:has(.v2-pf-date-wheel-card.is-open:not(.v2-widget-layout-card)),
.page-portfolio .v2-pf-hero:has(.v2-widget-layout-card.is-open){
  overflow:visible;
}
.page-portfolio .v2-pf-filter-hero{
  position:relative;
  z-index:60;
  isolation:isolate;
  pointer-events:auto;
}
.page-portfolio .v2-pf-filter-hero .v2-pf-filter-grid,
.page-portfolio .v2-pf-filter-hero .v2-pf-filter-card,
.page-portfolio .v2-pf-filter-hero .v2-dash-widget__body,
.page-portfolio .v2-pf-filter-hero .v2-filter-tabs-host,
.page-portfolio .v2-pf-filter-hero .widget-filter-tab{
  pointer-events:auto;
}
.page-portfolio .v2-pf-filter-card--accounts{
  z-index:65;
}
.page-portfolio .v2-pf-filter-card--accounts .widget-filter-tab,
.page-portfolio .v2-pf-filter-card--accounts .v2-filter-tabs-host{
  position:relative;
  z-index:1;
  pointer-events:auto;
  cursor:pointer;
}
.page-portfolio .v2-pf-filter-card--menu-open,
.page-portfolio .v2-portfolio-filter-cluster--menu-open,
.page-summary--dashboard .v2-pf-filter-card--menu-open,
.page-summary--dashboard .v2-portfolio-filter-cluster--menu-open{
  position:relative;
  z-index:1300;
  overflow:visible;
}
.page-portfolio .v2-portfolio-filter-cluster,
.page-summary--dashboard .v2-portfolio-filter-cluster{
  position:relative;
  z-index:50;
  overflow:visible;
  align-items:flex-start;
}
.page-portfolio .v2-pf-filter-card--menu-open .v2-portfolio-filter-cluster,
.page-summary--dashboard .v2-pf-filter-card--menu-open .v2-portfolio-filter-cluster{
  overflow:visible;
}
.page-portfolio .v2-portfolio-add-wrap,
.page-summary--dashboard .v2-portfolio-add-wrap{
  position:relative;
  z-index:60;
  overflow:visible;
}
.page-portfolio .v2-portfolio-add-wrap.is-open{
  z-index:1310;
}
.page-portfolio .v2-portfolio-add-menu--panel{
  z-index:1320;
}
.page-portfolio .card.v2-pf-body.v2-pf-body--portfolio-menu-open{
  position:relative;
  z-index:1200;
  overflow:visible;
}
.page-portfolio .portfolio-table-wrap{
  position:relative;
  z-index:1;
  isolation:isolate;
  width:100%;
  max-width:100%;
  overflow-x:auto;
  overflow-y:visible;
  -webkit-overflow-scrolling:touch;
}
.page-portfolio .pf-v2-cols-anchor{
  position:relative;
  flex-shrink:0;
  display:block;
  min-width:72px;
  width:auto;
  min-height:var(--pf-toolbar-control-h,32px);
  height:var(--pf-toolbar-control-h,32px);
  overflow:visible;
  z-index:50;
}
.page-portfolio .v2-portfolio-add-wrap.is-open:not(.v2-pf-filter-card--sources .v2-portfolio-add-wrap){
  z-index:220;
}
.page-portfolio .pf-v2-cols-anchor:has(.pf-cols-lop-chip.is-open){
  height:auto;
  min-height:var(--pf-toolbar-control-h,32px);
  z-index:220;
}
.page-portfolio .v2-pf-table-toolbar__cluster .pf-v2-cols-anchor:has(.pf-cols-lop-chip.is-open){
  height:var(--pf-toolbar-control-h,32px);
  min-height:var(--pf-toolbar-control-h,32px);
  max-height:var(--pf-toolbar-control-h,32px);
}
/* Таблетка столбцов: в якоре справа; список растёт вниз (не к KPI) */
.pf-cols-lop-chip.laconic-overlay-picker{
  --pf-cols-trigger-h:30px;
  --pf-cols-panel-w:min(272px,calc(100vw - 24px));
  position:absolute;
  top:0;
  right:0;
  left:auto;
  margin:0;
  display:flex;
  flex-direction:column;
  align-items:stretch;
  width:max-content;
  min-width:min-content;
  max-width:var(--pf-cols-panel-w);
  box-sizing:border-box;
  padding:0;
  min-height:0;
  height:var(--pf-toolbar-control-h,32px);
  border:1px solid var(--muted);
  border-radius:var(--radius-pill);
  background:var(--panel);
  box-shadow:none;
  overflow:hidden;
}
.pf-cols-lop-chip.laconic-overlay-picker:not(.is-open){
  width:max-content;
  max-width:none;
  border-color:var(--muted);
}
.pf-cols-lop-chip.laconic-overlay-picker.is-open{
  z-index:var(--lop-z-open,2500);
  width:max-content;
  min-width:0;
  max-width:var(--pf-cols-panel-w);
  min-height:0;
  height:auto;
  --pf-cols-trigger-h:32px;
  padding:0;
  border-radius:12px;
  border-bottom:1px solid var(--filter-chip-active-border,var(--accent));
  background:var(--laconic-card-bg,var(--panel));
  box-shadow:0 10px 32px rgba(0,0,0,.14),0 2px 8px rgba(0,0,0,.08);
  overflow:visible;
}
.pf-cols-lop-chip:not(.pf-add-lop-chip):not(.is-open) .laconic-overlay-picker__host{
  position:static;
  width:0;
  min-width:0;
  max-width:0;
  height:0;
  min-height:0;
  margin:0;
  padding:0;
  overflow:hidden;
  visibility:hidden;
  pointer-events:none;
  border:none;
  background:transparent;
  box-shadow:none;
}
.pf-cols-lop-chip.laconic-overlay-picker:not(.pf-add-lop-chip).is-open .laconic-overlay-picker__host.is-open{
  position:static;
  top:auto;
  right:auto;
  left:auto;
  display:flex;
  flex-direction:column;
  align-items:stretch;
  width:100%;
  min-width:0;
  max-width:100%;
  max-height:none;
  margin:0;
  padding:0 12px 10px;
  box-sizing:border-box;
  overflow:hidden;
  border:none;
  border-radius:0;
  background:var(--laconic-card-bg,var(--panel));
  box-shadow:none;
}
html.theme-dark .pf-cols-lop-chip.laconic-overlay-picker{
  background:var(--graphite-750,var(--panel));
}
html.theme-dark .pf-cols-lop-chip.laconic-overlay-picker:not(.is-open){
  border-color:var(--ivory-400,#a3a3a3);
}
html.theme-dark .pf-cols-lop-chip.laconic-overlay-picker.is-open{
  background:var(--color-twilight,var(--panel));
  border-color:var(--orange-bright,var(--accent));
  box-shadow:0 12px 36px rgba(0,0,0,.42),0 2px 10px rgba(0,0,0,.2);
}
@media (max-width:420px){
  .pf-cols-lop-chip.laconic-overlay-picker{
    --pf-cols-panel-w:min(calc(100vw - 24px),272px);
  }
}

/* «+» подключить источник — отдельный overlay (не pf-cols-lop-chip) */
.pf-add-lop-chip.laconic-overlay-picker{
  --pf-cols-panel-w:min(272px,calc(100vw - 24px));
  --pf-cols-trigger-h:var(--add-portfolio-size,32px);
  position:relative;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  top:0;
  left:0;
  right:auto;
  width:var(--add-portfolio-size,32px);
  min-width:var(--add-portfolio-size,32px);
  max-width:var(--add-portfolio-size,32px);
  height:var(--add-portfolio-size,32px);
  min-height:var(--add-portfolio-size,32px);
  max-height:var(--add-portfolio-size,32px);
  margin:0;
  padding:0;
  border:none;
  border-radius:0;
  background:transparent;
  overflow:visible;
  box-sizing:border-box;
}
.pf-add-lop-chip.laconic-overlay-picker:not(.is-open){
  overflow:hidden;
}
.pf-add-lop-chip:not(.is-open) .laconic-overlay-picker__host{
  position:absolute;
  width:1px;
  height:1px;
  margin:-1px;
  padding:0;
  overflow:hidden;
  clip:rect(0,0,0,0);
  visibility:hidden;
  pointer-events:none;
}
.pf-add-lop-chip:not(.is-open) .laconic-overlay-picker__panel{
  max-height:0;
  opacity:0;
  overflow:hidden;
  padding:0;
  margin:0;
}
.pf-add-lop-chip.is-open .laconic-overlay-picker__panel{
  position:static;
  max-height:none;
  opacity:1;
}
.page-portfolio .pf-add-lop-chip.laconic-overlay-picker{
  --add-portfolio-size:var(--pf-toolbar-control-h,32px);
  height:var(--pf-toolbar-control-h,32px);
  min-height:var(--pf-toolbar-control-h,32px);
  max-height:var(--pf-toolbar-control-h,32px);
}
html.theme-dark .pf-add-lop-chip.laconic-overlay-picker{
  background:transparent;
}

/* Портфель: импорт — в общем столбце gap без лишнего зазора */
.page-portfolio .v2-pf-paste-section{
  margin:0;
  padding:0;
  display:contents;
}
.page-portfolio .v2-pf-paste-stack{
  margin:0;
}
.page-portfolio .v2-pf-paste-stack__summary{
  gap:var(--laconic-gap,16px);
}
.page-portfolio .v2-pf-paste-hint{
  flex:0 0 auto;
  width:22px;
  height:22px;
  margin-left:auto;
  padding:0;
  border:1px solid var(--line,#d9d1c7);
  border-radius:50%;
  background:transparent;
  color:var(--muted,#8d8173);
  font-size:13px;
  font-weight:600;
  line-height:1;
  cursor:help;
  position:relative;
}
html.theme-dark .page-portfolio .v2-pf-paste-hint{
  border-color:var(--line,#4a4a4a);
  color:var(--ivory-400,#a8a8a8);
}
.page-portfolio .v2-pf-paste-hint:hover,
.page-portfolio .v2-pf-paste-hint:focus-visible{
  color:var(--text);
  border-color:var(--accent-2,var(--accent));
}
.page-portfolio .v2-pf-paste-hint[data-tip]::after{
  content:attr(data-tip);
  position:absolute;
  left:50%;
  top:calc(100% + 8px);
  transform:translateX(-50%);
  padding:8px 12px;
  border-radius:10px;
  background:var(--text);
  color:#fff;
  font-size:12px;
  font-weight:500;
  line-height:1.35;
  white-space:normal;
  width:max-content;
  max-width:min(320px,70vw);
  text-align:left;
  box-shadow:0 6px 18px rgba(40,30,20,.18);
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:opacity .12s ease,visibility .12s ease;
  z-index:1500;
}
.page-portfolio .v2-pf-paste-hint[data-tip]:hover::after,
.page-portfolio .v2-pf-paste-hint[data-tip]:focus-visible::after{
  opacity:1;
  visibility:visible;
}
html.theme-dark .page-portfolio .v2-pf-paste-hint[data-tip]::after{
  background:var(--panel);
  color:var(--text);
  border:1px solid var(--line);
  box-shadow:0 8px 24px rgba(0,0,0,.45);
}
.page-portfolio .v2-pf-paste-sources{
  display:flex;
  flex-direction:column;
  gap:var(--laconic-gap,16px);
}
.page-portfolio .v2-pf-paste-source-card{
  margin:0;
}
.page-portfolio .v2-pf-paste-source-card > .v2-dash-widget__body{
  padding-top:6px;
}
.page-portfolio .v2-pf-paste-source__summary{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:6px 10px;
}
.page-portfolio .v2-pf-paste-source__summary .v2-dash-widget__title{
  flex:0 1 auto;
  cursor:help;
}
.page-portfolio .v2-pf-paste-source-status{
  margin:0 0 0 auto;
  font-size:11px;
  line-height:1.3;
  color:var(--muted,#8d8173);
  flex:1 1 120px;
  text-align:right;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.page-portfolio .v2-pf-paste-accounts{
  display:flex;
  flex-direction:column;
  gap:6px;
}
.page-portfolio .v2-pf-paste-account{
  margin:0;
  padding:8px 10px;
  border:1px solid var(--line,#e5e0d8);
  border-radius:10px;
  background:var(--panel-2,var(--panel,#f8f6f2));
  display:flex;
  flex-direction:column;
  gap:6px;
}
html.theme-dark .page-portfolio .v2-pf-paste-account{
  background:var(--color-twilight-800,var(--panel));
  border-color:var(--line,#3a3a3a);
}
.page-portfolio .v2-pf-paste-account__head{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:6px 8px;
}
.page-portfolio .v2-pf-paste-account__title{
  margin:0;
  font-size:13px;
  font-weight:600;
  line-height:1.25;
  color:var(--text);
  cursor:help;
  flex:1 1 auto;
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.page-portfolio .v2-pf-paste-account__tools{
  display:inline-flex;
  flex-wrap:nowrap;
  align-items:center;
  gap:6px;
  flex:0 0 auto;
  margin-left:auto;
}
.page-portfolio .v2-pf-paste-date{
  width:auto;
  min-width:0;
  max-width:132px;
  padding:4px 6px;
  font-size:12px;
}
.page-portfolio .v2-pf-paste-import-btn{
  min-height:28px;
  padding:4px 10px;
  font-size:12px;
}
.page-portfolio .v2-pf-paste-text{
  display:block;
  width:100%;
  max-width:100%;
  margin:0;
  padding:6px 8px;
  font-family:ui-monospace,Consolas,monospace;
  font-size:11px;
  line-height:1.3;
  min-height:64px;
  max-height:140px;
  resize:vertical;
  border-radius:8px;
}
.page-portfolio .v2-pf-paste-kit-guide{
  margin:4px 0 0;
  font-size:11px;
  line-height:1.35;
  color:var(--muted,#8d8173);
}
.page-portfolio .v2-pf-paste-kit-guide code{
  font-size:11px;
}
.page-portfolio .v2-pf-paste-note{
  margin:0;
  font-size:11px;
  line-height:1.3;
  color:var(--muted,#8d8173);
  min-height:0;
}
.page-portfolio .v2-pf-paste-note:not(:empty){
  min-height:1.3em;
}
.page-portfolio .v2-pf-paste-empty{
  margin:0;
  font-size:12px;
  color:var(--muted,#8d8173);
}
.page-portfolio .v2-pf-paste-account__title[data-tip],
.page-portfolio .v2-pf-paste-source__summary .v2-dash-widget__title[data-tip]{
  position:relative;
}
.page-portfolio .v2-pf-paste-account__title[data-tip]::after,
.page-portfolio .v2-pf-paste-source__summary .v2-dash-widget__title[data-tip]::after{
  content:attr(data-tip);
  position:absolute;
  left:0;
  top:calc(100% + 6px);
  padding:6px 10px;
  border-radius:8px;
  background:var(--text);
  color:#fff;
  font-size:11px;
  font-weight:500;
  line-height:1.35;
  white-space:normal;
  width:max-content;
  max-width:min(300px,72vw);
  text-align:left;
  box-shadow:0 6px 16px rgba(40,30,20,.16);
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:opacity .12s ease,visibility .12s ease;
  z-index:1500;
}
.page-portfolio .v2-pf-paste-account__title[data-tip]:hover::after,
.page-portfolio .v2-pf-paste-account__title[data-tip]:focus-visible::after,
.page-portfolio .v2-pf-paste-source__summary .v2-dash-widget__title[data-tip]:hover::after,
.page-portfolio .v2-pf-paste-source__summary .v2-dash-widget__title[data-tip]:focus-visible::after{
  opacity:1;
  visibility:visible;
}
html.theme-dark .page-portfolio .v2-pf-paste-account__title[data-tip]::after,
html.theme-dark .page-portfolio .v2-pf-paste-source__summary .v2-dash-widget__title[data-tip]::after{
  background:var(--panel);
  color:var(--text);
  border:1px solid var(--line);
  box-shadow:0 8px 22px rgba(0,0,0,.45);
}
@media (min-width:900px){
  .page-portfolio .v2-pf-paste-sources{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
    align-items:start;
  }
}

/* KPI: настройка виджетов — как «Дата среза», список fixed поверх страницы */
.v2-widget-layout-slot{
  display:block;
  min-width:0;
  min-height:var(--lop-card-min-h);
  height:100%;
  position:relative;
  z-index:2;
}
.v2-widget-layout-card.v2-kpi{
  width:100%;
  min-width:0;
  max-width:100%;
  height:100%;
  min-height:var(--lop-card-min-h);
  padding:10px 12px;
  box-sizing:border-box;
  position:relative;
  overflow:visible;
  background:var(--pf-kpi-widgets-fill,#e6e6e6);
  border-color:var(--pf-kpi-widgets-border,#d4d4d4);
  box-shadow:none;
  color:var(--pf-kpi-fill-text,var(--color-onyx,#0f0f0f));
}
html.theme-dark .v2-widget-layout-card.v2-kpi{
  --pf-kpi-widgets-fill:#5a5a5a;
  --pf-kpi-widgets-border:#6a6a6a;
  background:var(--pf-kpi-widgets-fill,#5a5a5a);
  border-color:var(--pf-kpi-widgets-border,#6a6a6a);
  color:var(--ivory-200,#e8e8e8);
}
.v2-widget-layout-card.v2-kpi .v2-kpi-label,
.v2-widget-layout-card.v2-kpi .v2-widget-layout-summary,
.v2-widget-layout-card.v2-kpi .laconic-overlay-picker__toggle,
.v2-widget-layout-card.v2-kpi .v2-pf-date-picker-trigger{
  color:inherit;
}
.v2-widget-layout-card.v2-kpi .laconic-overlay-picker__caret{
  border-top-color:currentColor;
}
.page-summary--dashboard .v2-pf-kpi-grid--summary .v2-widget-layout-card.is-open,
.page-portfolio .v2-pf-kpi-grid .v2-widget-layout-card.is-open{
  width:100%;
  min-width:0;
  max-width:100%;
  height:var(--lop-card-min-h);
  min-height:var(--lop-card-min-h);
  max-height:var(--lop-card-min-h);
  padding:10px 12px;
  align-self:stretch;
  background:var(--pf-kpi-widgets-fill,#e6e6e6);
  border:var(--lop-border-w,2px) solid var(--filter-chip-active-border,var(--accent,var(--orange,#df7f25)));
  box-shadow:0 10px 32px rgba(0,0,0,.14),0 2px 8px rgba(0,0,0,.08);
}
html.theme-dark .page-summary--dashboard .v2-pf-kpi-grid--summary .v2-widget-layout-card.is-open,
html.theme-dark .page-portfolio .v2-pf-kpi-grid .v2-widget-layout-card.is-open{
  background:var(--pf-kpi-widgets-fill,#5a5a5a);
  border-color:var(--orange-bright,var(--accent-2));
  box-shadow:0 12px 36px rgba(0,0,0,.5);
}
.v2-widget-layout-card .v2-widget-layout-summary{
  color:inherit;
  border:none;
  background:transparent;
  box-shadow:none;
  -webkit-text-stroke:0;
  text-shadow:none;
}
.page-summary--dashboard .v2-pf-kpi-grid--summary .v2-kpi--nav,
.page-summary--dashboard .v2-pf-kpi-grid--summary .v2-kpi--pnl-growth,
.page-summary--dashboard .v2-pf-kpi-grid--summary .v2-kpi--pnl-yield,
.page-portfolio .v2-pf-kpi-grid .v2-kpi--nav,
.page-portfolio .v2-pf-kpi-grid .v2-kpi--pnl-growth,
.page-portfolio .v2-pf-kpi-grid .v2-kpi--pnl-yield{
  padding:10px 12px;
}
.page-summary--dashboard .v2-pf-kpi-grid--summary .v2-kpi--count,
.page-portfolio .v2-pf-kpi-grid .v2-kpi--count{
  width:100%;
  min-width:0;
  max-width:100%;
  padding:10px 12px;
  box-sizing:border-box;
}
.page-summary--dashboard .v2-pf-kpi-grid--summary .v2-kpi--reload,
.page-portfolio .v2-pf-kpi-grid .v2-kpi--reload{
  width:100%;
  min-width:0;
  max-width:100%;
  flex-shrink:0;
}
/* Не раздувать hero/kpi-grid при открытом списке виджетов (в отличие от даты) */
.page-summary--dashboard .v2-pf-kpi-grid--summary:has(.v2-widget-layout-card.is-open),
.page-portfolio .v2-pf-kpi-grid:has(.v2-widget-layout-card.is-open){
  height:var(--lop-card-min-h);
  min-height:var(--lop-card-min-h);
  max-height:var(--lop-card-min-h);
  align-items:stretch;
  overflow:visible;
}
.page-summary--dashboard .v2-dash-hero:has(.v2-widget-layout-card.is-open),
.page-summary--dashboard .v2-dash-hero-body:has(.v2-widget-layout-card.is-open),
.page-portfolio .v2-pf-hero:has(.v2-widget-layout-card.is-open),
.page-portfolio .v2-pf-hero-body:has(.v2-widget-layout-card.is-open){
  height:var(--lop-card-min-h);
  min-height:var(--lop-card-min-h);
  max-height:var(--lop-card-min-h);
  overflow:visible;
}
body.v2-widget-layout-picker-open .v2-widget-layout-card.is-open{
  z-index:6490;
}
/* Портал: список виджетов поверх KPI, фильтров и таблицы */
.v2-widget-layout-portal{
  position:fixed;
  inset:0;
  z-index:15000;
  pointer-events:none;
  overflow:visible;
}
.v2-widget-layout-portal .v2-widget-layout-host--float{
  pointer-events:auto;
  z-index:1;
}
.v2-widget-layout-card .laconic-overlay-picker__host:not(.is-open){
  position:absolute;
  width:1px;
  height:1px;
  overflow:hidden;
  clip:rect(0,0,0,0);
  white-space:nowrap;
  border:0;
  padding:0;
  margin:0;
}
.v2-widget-layout-host--float{
  display:flex !important;
  flex-direction:column;
  align-items:stretch;
  overflow:hidden;
  clip:auto !important;
  white-space:normal;
  padding:0 12px 10px;
  box-sizing:border-box;
  background:var(--laconic-card-bg,var(--panel));
  border:var(--lop-border-w,2px) solid var(--filter-chip-active-border,var(--accent,var(--orange,#df7f25)));
  border-radius:var(--laconic-radius,12px);
  box-shadow:0 10px 32px rgba(0,0,0,.18),0 2px 8px rgba(0,0,0,.1);
}
html.theme-dark .v2-widget-layout-host--float{
  background:var(--color-twilight-800,var(--panel));
  border-color:var(--orange-bright,var(--accent-2));
  box-shadow:0 12px 36px rgba(0,0,0,.5);
}
.v2-widget-layout-host--float .v2-widget-layout-panel{
  flex:0 0 auto;
  min-height:0;
  border:none;
  box-shadow:none;
  background:transparent;
  padding:0;
  margin:0;
  overflow:hidden;
}
.v2-widget-layout-host.is-open .v2-widget-layout-panel.pf-cols-lop-panel--wheel{
  --pf-cols-row-h:28px;
  display:block;
  width:100%;
  max-height:none;
  height:calc(var(--pf-cols-row-h) * var(--pf-cols-visible-rows, 1));
  margin:0;
  padding:0;
  overflow:hidden;
  outline:none;
}
.v2-widget-layout-row.pf-cols-wheel-row{
  height:var(--pf-cols-row-h,28px);
  min-height:var(--pf-cols-row-h,28px);
}
.v2-widget-layout-host.is-open .v2-widget-layout-panel::after,
.v2-widget-layout-host--float .v2-widget-layout-panel::after{
  display:none;
  content:none;
}
.v2-widget-layout-host--float .v2-widget-layout-footer{
  flex:0 0 auto;
  margin-top:6px;
}
.v2-widget-layout-host--float-up{
  transform-origin:bottom left;
}
.v2-widget-layout-row{
  display:flex;
  align-items:center;
  gap:4px;
  padding-left:2px;
  padding-right:2px;
}
.v2-widget-layout-row--dragging{
  opacity:.72;
  background:rgba(223,127,37,.08);
}
.v2-widget-layout-grip{
  flex:0 0 auto;
  width:20px;
  height:24px;
  margin:0;
  padding:0;
  border:none;
  border-radius:6px;
  background:transparent;
  color:var(--muted,#8d8173);
  font-size:14px;
  line-height:1;
  cursor:grab;
  touch-action:none;
}
.v2-widget-layout-grip:active{
  cursor:grabbing;
}
.v2-widget-layout-check{
  display:flex;
  align-items:center;
  gap:6px;
  flex:1 1 auto;
  min-width:0;
  margin:0;
  cursor:pointer;
}
/* ── Адаптив KPI: узкий экран — горизонтальный скролл, всё в один ряд ── */
@container app-main (max-width:960px){
  .page-summary--dashboard .v2-dash-hero-body,
  .page-portfolio .v2-pf-hero-body{
    overflow-x:auto;
    overflow-y:visible;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:thin;
  }
  .page-summary--dashboard .v2-pf-kpi-grid--summary,
  .page-portfolio .v2-pf-kpi-grid,
  .v2-kpi-grid.v2-pf-kpi-grid--summary{
    width:max-content;
    min-width:100%;
  }
}
@container app-main (max-width:1100px){
  .page-summary--dashboard .v2-wf-filter-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}
@container app-main (max-width:1320px){
  .v2-pf-kpi-grid .v2-kpi:not(.v2-kpi--nav),
  .v2-pf-kpi-grid--summary .v2-kpi:not(.v2-kpi--nav),
  .v2-pf-kpi-grid .laconic-overlay-picker:not(.v2-kpi--nav),
  .v2-pf-kpi-grid--summary .laconic-overlay-picker:not(.v2-kpi--nav){
    padding:8px 10px;
  }
  .v2-pf-kpi-grid .v2-kpi--nav,
  .v2-pf-kpi-grid--summary .v2-kpi--nav{
    padding:8px 12px;
  }
  .v2-pf-kpi-grid .v2-kpi--reload,
  .v2-pf-kpi-grid--summary .v2-kpi--reload{
    padding:0;
  }
  .v2-pf-kpi-grid,
  .v2-pf-kpi-grid--summary{
    --pf-kpi-line-size:13px;
  }
}
.v2-widget-layout-check .pf-cols-wheel-label{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
