/* ═══════════════════════════════════════════════════════════════════════════
   skin.pravo.css — «Архитектура права», 09.09.2026.

   Источник: комплект вёрстки output/pravo-handoff (утверждённое направление 02,
   docs/approved-direction.png). Белая архитектура, синие акценты #145BED,
   заголовки и интерфейс — Golos, названия карточек каталога и колонка нормы —
   Roboto Condensed. Значения приведены к рабочей шкале (root ≈ 20.27px при
   data-fs=19): численные rem пакета НЕ копируются (docs/integration.md).

   Подключается ПЕРЕД norma-tokens.css → norma-base.css → norma-v12.css
   (transform вставляет link выше манифеста) — побеждает только специфичностью
   html[data-tenant="pravo"]; правило без этого префикса молча проиграет базе.
   Контур ТОЛЬКО светлый: сборка ставит data-theme="light" и data-theme-locked
   (webpack SKINS), переключателей темы в интерфейсе нет — тёмного блока
   в этом файле нет намеренно.

   Изображения — пакет img/architecture (webpack: public/img/tenants/pravo/
   architecture): девять сцен 2:1 (главная, семь разделов, библиотека) и
   icons/ — объёмные пиктограммы категорий (редакция иконок 09.09).
   Слоты новой графики размечены в ui/Plate.tsx (.pv-section-plate),
   screens/HomeScreen.tsx (.pv-home-hero, .pv-cat-art, .pv-cat-chev)
   и app/Intro.tsx (.pv-intro-art).

   Смысловую семантику не трогаем: цвета вердиктов --v-* остаются базовыми.
   Прежняя цветовая радуга разделов снята: все --au-* сведены к синей
   навигационной палитре, чтобы inline --au не возвращал её в метр и чипы.
   Прежний точечный skin.pravo.css (27.08, четыре правила плиток) заменён
   целиком вместе с новым каталогом.
   ═══════════════════════════════════════════════════════════════════════════ */

/* ── 1. Палитра «Белая архитектура» и базовая геометрия ── */
html[data-tenant="pravo"]{
  color-scheme:light;
  /* поверхности: белый фон приложения и белые карточки */
  --ink-900:#FFFFFF;
  --ink-850:#F5F8FE;
  --ink-800:#FFFFFF;
  --ink-750:#EEF3FB;
  --ink-700:#E4EBF5;
  --ink-650:#D7E2F3;
  --line:#D7E2F3;
  --line-soft:#E5EDF8;
  /* текст: глубокая сине-серая гамма пакета */
  --tx-1:#243957;
  --tx-2:#576984;
  --tx-3:#61738D;
  --tx-4:#7C89A0;
  /* основное действие — синий */
  --solid:#145BED;
  --solid-tx:#FFFFFF;
  --solid-hi:#104CCA;
  --au-hi:#10295B;
  /* единая синяя навигационная палитра вместо радуги категорий */
  --au-tax:#145BED; --au-work:#145BED; --au-consumer:#145BED; --au-contract:#145BED;
  --au-debt:#145BED; --au-dispute:#145BED; --au-family:#145BED; --au-car:#145BED;
  --au-utility:#145BED; --au-road:#145BED; --au-svc:#145BED;
  --au-op1:.14; --au-op2:.10; --au-op3:.08;
  /* сцена вокруг кадра desktop */
  --desk:#EEF3FA;
  --stage:#EEF3FA;
  --stage-glow:rgba(20,91,237,.05);
  --frame-b:#D5E0F0;
  --bar-fade:rgba(255,255,255,.88);
  --bar-solid:rgba(255,255,255,.94);
  --scrim:rgba(20,38,71,.30);
  --seg-bg:#EEF3FB;
  --seg-on:#FFFFFF;
  /* лист документа — белая бумага с голубой линовкой */
  --paper:#FFFFFF;
  --paper-2:#F4F7FC;
  --paper-ink:#28384F;
  --paper-tx2:#576984;
  --paper-line:#D7E2F3;
  /* фирменные цвета направления 02 */
  --pv-ink:#10295B;          /* тёмно-синие заголовки */
  --pv-blue:#145BED;         /* основное действие, ссылки, фокус */
  --pv-blue-2:#104CCA;       /* наведение, активный оттенок */
  --pv-line-strong:#A8C1E8;  /* усиленная граница */
  --pv-red:#A43536;          /* ошибка, опасное действие */
  --pv-shadow:0 2px 8px rgba(16,41,91,.04),0 1px 2px rgba(16,41,91,.05);
  --f-cond:'Roboto Condensed',var(--f-ui);
  /* Документная гарнитура направления 02 — Georgia только в бумажном образце;
     антиква Spectral в Pravo не используется (docs/tokens.md пакета). */
  --f-doc:Georgia,'Times New Roman',serif;
  --r-sm:6px;
  --r-md:8px;
  --r-lg:12px;
}

html[data-tenant="pravo"] body{
  -webkit-text-size-adjust:100%;
  text-size-adjust:100%;
  background:#EEF3FA;
}
html[data-tenant="pravo"] .stage{background:none}
@media(min-width:760px){
  html[data-tenant="pravo"] .frame{
    border-radius:22px;
    box-shadow:0 22px 70px rgba(16,41,91,.08),inset 0 0 0 1px #FFFFFF;
  }
}
html[data-tenant="pravo"] .app{background:var(--ink-900)}

html[data-tenant="pravo"] button,
html[data-tenant="pravo"] textarea{
  -webkit-tap-highlight-color:transparent;
}
html[data-tenant="pravo"] :focus-visible{outline-color:var(--pv-blue)}
/* Фокус текстового поля показывает сам контейнер (правило рестайла finhelp
   26.08): рамка чуть темнее, без кричащей обводки вокруг поля. */
html[data-tenant="pravo"] .comp textarea:focus-visible{outline:none}
html[data-tenant="pravo"] .comp:focus-within{
  border-color:var(--pv-blue);
  box-shadow:0 0 0 3px rgba(20,91,237,.07);
}

/* ── 2. Плавающие кнопки: белая карточка со скруглением 9px ── */
html[data-tenant="pravo"] .topbar .tb-btn{
  border:1px solid #C9DAF1;
  border-radius:9px;
  background:rgba(255,255,255,.95);
  color:var(--pv-ink);
  box-shadow:var(--pv-shadow);
  -webkit-backdrop-filter:blur(12px);
  backdrop-filter:blur(12px);
  touch-action:manipulation;
}
html[data-tenant="pravo"] .topbar .tb-btn::before{display:none}

/* трекер стадий: пройденное — голубая линия, текущее — синий */
html[data-tenant="pravo"] .tracker{background:var(--bar-solid)}
html[data-tenant="pravo"] .stg.done i{background:var(--pv-line-strong)}
html[data-tenant="pravo"] .stg.now i{background:var(--pv-blue);box-shadow:none}
html[data-tenant="pravo"] .stg.now span{color:var(--pv-blue-2)}

/* ── 3. Типографика: тёмно-синие заголовки Golos ── */
html[data-tenant="pravo"] :is(.hello h1,.doc-top h1,.intro-body h1,.sheet-h b,.dw-brand strong,.confirm b){
  color:var(--pv-ink);
}
html[data-tenant="pravo"] .screen .pad :is(h1,.h-md){
  color:var(--pv-ink);
  font-weight:700;
  letter-spacing:-.035em;
}
html[data-tenant="pravo"] .v-src{color:var(--pv-blue-2)}
html[data-tenant="pravo"] .consent-link{color:var(--pv-blue-2)}

/* ── 4. Главная: сцена ДО названия, поле вопроса, каталог 2×3 + широкая ── */
html[data-tenant="pravo"] .aurora{display:none}
/* Гравюры прежних стилей из разметки в этой редакции не рисуются; display:none
   выводит их и из сетки карточек — иначе пустой span занимает колонку. */
html[data-tenant="pravo"] .eng{display:none!important}
html[data-tenant="pravo"] .eng-home-band{display:none}
html[data-tenant="pravo"] #scr-home{padding-top:0}

/* Архитектурная сцена — самостоятельный верхний блок 2:1 в потоке;
   плавающая кнопка меню ложится на спокойный верхний угол кадра. */
html[data-tenant="pravo"] .pv-home-hero{
  display:block;
  width:100%;
  height:auto;
  aspect-ratio:2/1;
  pointer-events:none;
}

/* Название и подпись идут ПОСЛЕ фотографии, без наложения и теней */
html[data-tenant="pravo"] .hello.small{padding:22px 20px 0}
html[data-tenant="pravo"] #scr-home .hello h1.brand-h{
  margin-bottom:0;
  font-size:1.6875rem;
  line-height:1.05;
  font-weight:700;
  letter-spacing:-.045em;
  text-align:left;
  text-wrap:balance;
}
html[data-tenant="pravo"] .hello h1 .hello-tag{
  margin-top:10px;
  font-family:var(--f-ui);
  font-size:0.6875rem;
  line-height:1.5;
  font-weight:400;
  letter-spacing:.02em;
  text-transform:none;
  color:var(--tx-2);
  white-space:normal;
}
/* «Сложное становится ясным.» + лид — блок-представление после названия */
html[data-tenant="pravo"] .hello .hello-motto{
  margin:20px 0 6px;
  font-size:0.9375rem;
  line-height:1.4;
  font-weight:600;
  letter-spacing:-.025em;
  color:var(--pv-ink);
}
html[data-tenant="pravo"] .hello.small p{
  max-width:none;
  line-height:1.58;
}
html[data-tenant="pravo"] .hello .hello-ask{
  margin-top:20px;
  font-size:0.9375rem;
  line-height:1.4;
  font-weight:600;
  letter-spacing:-.025em;
  color:var(--pv-ink);
}

/* Поле вопроса: белая карточка с голубой рамкой, синяя кнопка отправки */
html[data-tenant="pravo"] .comp{
  border:1px solid #BCCFEB;
  border-radius:8px;
  background:var(--ink-800);
  box-shadow:0 2px 5px rgba(16,41,91,.04);
}
html[data-tenant="pravo"] #scr-home .comp{margin:12px 16px 0!important}
html[data-tenant="pravo"] .comp-ctl .comp-send{
  width:44px;
  border-radius:6px;
  background:var(--pv-blue);
  color:#FFFFFF;
  box-shadow:none;
}
@media (hover:hover){
  html[data-tenant="pravo"] .comp-ctl .comp-send:hover:not([disabled]){background:var(--pv-blue-2)}
}
html[data-tenant="pravo"] .comp-send[disabled]{
  border:0;
  background:#B7CAE8;
  color:#FFFFFF;
  box-shadow:none;
}

html[data-tenant="pravo"] .home-dirs{padding:26px 20px 12px}
html[data-tenant="pravo"] .home-dirs :is(b,h2){
  display:block;
  margin:0;
  max-width:340px;
  color:var(--pv-ink);
  font-size:0.9375rem;
  line-height:1.35;
  font-weight:600;
  letter-spacing:-.03em;
  white-space:normal;
  text-wrap:pretty;
}

/* Каталог: шесть равных карточек 2×3, седьмая — на всю ширину по ключу
   public_justice (data-section, а не порядковый селектор). Линейная иконка
   слева, название кондесом, шеврон справа; цветные линии базы сняты. */
html[data-tenant="pravo"] .cat{
  grid-template-columns:1fr 1fr;
  grid-auto-rows:minmax(88px,auto);
  gap:9px;
  padding:0 16px;
}
html[data-tenant="pravo"] .cat-i{
  /* Сетка редакции иконок 09.09, ужатая по горизонтали (владелец):
     текстовая колонка вмещает «Недвижимость» целиком, без переносов, —
     иконка 45px вместо 50px пакета, зазоры и поля минимальные. */
  grid-template-columns:45px minmax(0,1fr) 6px;
  gap:4px;
  align-content:center;
  align-items:center;
  min-height:88px;
  padding:12px 4px;
  border:1px solid #C4D5ED;
  border-radius:8px;
  background:linear-gradient(110deg,#FFFFFF,#F7FAFF);
  box-shadow:0 2px 5px rgba(16,41,91,.03);
  touch-action:manipulation;
  transition:background var(--dur-fast) var(--e),border-color var(--dur-fast) var(--e),box-shadow var(--dur-fast) var(--e);
}
html[data-tenant="pravo"] .cat-i::before,
html[data-tenant="pravo"] .cat-i::after{display:none}
html[data-tenant="pravo"] .cat-i:active{background:#E8F0FD}
@media (hover:hover){
  html[data-tenant="pravo"] .cat-i:hover{
    background:#F1F6FF;
    border-color:#769BDA;
    box-shadow:0 3px 10px rgba(20,91,237,.05);
  }
}
html[data-tenant="pravo"] .pv-cat-art{
  display:block;
  width:45px;
  height:45px;
  object-fit:contain;
  /* белая подложка пиктограммы умножается на градиент карточки */
  mix-blend-mode:multiply;
}
html[data-tenant="pravo"] .cat-t{display:block;min-width:0}
html[data-tenant="pravo"] .cat-t .ic{display:none}
/* Кегль чуть меньше базового: на рабочей шкале 19 «Недвижимость» иначе не
   помещается в колонку и рвётся посреди слова. hyphens:auto — переносы
   по словарю на реальных браузерах, break-word — только аварийная защита
   (отступление от hyphens:none пакета из-за другой шкалы кегля). */
html[data-tenant="pravo"] .cat-t b{
  display:block;
  color:var(--pv-ink);
  font-family:var(--f-cond);
  font-size:0.75rem;
  line-height:1.3;
  font-weight:500;
  letter-spacing:-.02em;
  /* без переносов вовсе (владелец): колонка рассчитана под самое длинное
     слово; break-word — только аварийная защита от переполнения */
  hyphens:none;
  overflow-wrap:break-word;
  text-wrap:pretty;
}
html[data-tenant="pravo"] .pv-cat-chev{
  width:11px;height:15px;
  color:#7294C5;
  justify-self:end;
}
/* На крупном кегле (data-fs=20) root растёт на 5% — чтобы «Недвижимость»
   не упёрлась в колонку на узких экранах, название держит прежний
   физический размер. */
html[data-tenant="pravo"][data-fs="20"] .cat-t b{font-size:0.71875rem}
/* Седьмая карточка «Госорганы…» — на обе колонки, привязка по ключу раздела */
html[data-tenant="pravo"] .cat-i[data-section="public_justice"]{
  grid-column:1/-1;
  min-height:66px;
  grid-template-columns:50px minmax(0,1fr) 13px;
  gap:14px;
  padding:10px 14px;
}
html[data-tenant="pravo"] .cat-i[data-section="public_justice"] .cat-t b{font-size:0.8438rem}

/* ── 5. Страница раздела: сцена 2:1 целиком (contain) и заголовок после ── */
html[data-tenant="pravo"] .pv-section-plate{
  display:block;
  aspect-ratio:2/1;
  height:auto;
  background:var(--ink-900);
  -webkit-mask-image:none;
  mask-image:none;
  margin-bottom:22px;
}
html[data-tenant="pravo"] .pv-section-plate::before{display:none}
html[data-tenant="pravo"] .pv-section-art{
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
  pointer-events:none;
}
/* заголовок и лид идут ПОСЛЕ сцены: базовый подъём -26px снят */
html[data-tenant="pravo"] #scr-sect .pv-section-plate + .pad{margin-top:0!important}
html[data-tenant="pravo"] #scr-sect .pad h2{
  font-weight:700;
  line-height:1.12;
  letter-spacing:-.035em!important;
  color:var(--pv-ink);
  text-wrap:balance;
}
html[data-tenant="pravo"] #scr-sect .pad p{line-height:1.6!important}
html[data-tenant="pravo"] #scr-sect .comp{margin-left:16px!important;margin-right:16px!important}

/* карточки разборов: белая поверхность, узкая колонка нормы кондесом,
   тонкий разделитель, синий мост и шеврон справа */
html[data-tenant="pravo"] .art-card{
  margin:0 16px 9px;
  border:1px solid var(--line);
  border-radius:8px;
  background:var(--ink-800);
  box-shadow:var(--pv-shadow);
  overflow:hidden;
}
html[data-tenant="pravo"] .art-card:last-of-type{border-bottom:1px solid var(--line)}
html[data-tenant="pravo"] .art-card .art{border:0;padding:15px 12px 12px}
/* Колонка с номером нормы («ст. 74 ТК») скрыта — владелец 09.09: на плашке
   только название, время и мост; сам номер остаётся в шапке страницы разбора. */
html[data-tenant="pravo"] .art i{display:none}
html[data-tenant="pravo"] .art b{
  font-weight:500;
  letter-spacing:-.025em;
  color:var(--pv-ink);
}
html[data-tenant="pravo"] .art::after{
  content:'';
  flex:none;
  align-self:center;
  width:8px;
  height:8px;
  margin-left:2px;
  border-top:1.8px solid #7193C1;
  border-right:1.8px solid #7193C1;
  transform:rotate(45deg);
}
html[data-tenant="pravo"] .art-go{
  margin:-6px 0 0 12px;
  padding:0 16px 13px 0;
  color:var(--pv-blue);
  font-weight:400;
}
html[data-tenant="pravo"] .dl-group{color:var(--tx-3)}

/* типовые вопросы и нормы раздела */
html[data-tenant="pravo"] .q-list .q .ic{color:#7898C8}
html[data-tenant="pravo"] .q-list .q-more b{color:var(--pv-blue-2)}
html[data-tenant="pravo"] .norm{border-radius:8px;border-color:var(--line)}
html[data-tenant="pravo"] .doc-norm .norm + .norm,
html[data-tenant="pravo"] .sect-norms .norm{margin-bottom:10px}
html[data-tenant="pravo"] .norm-h{background:var(--ink-750)}
html[data-tenant="pravo"] .norm-h b{font-family:var(--f-ui);color:#204C88}
/* тексты норм и цитаты — Golos: антиква не входит в направление 02,
   Georgia остаётся только бумажному образцу (--f-doc выше) */
html[data-tenant="pravo"] .norm p,
html[data-tenant="pravo"] .norm details summary,
html[data-tenant="pravo"] .lawdoc-body{font-family:var(--f-ui)}
html[data-tenant="pravo"] .case p{font-family:var(--f-ui);font-style:normal}

/* ── 6. Экран разбора ── */
html[data-tenant="pravo"] .keyp,
html[data-tenant="pravo"] .go-dialog{
  border-color:var(--line);
  box-shadow:var(--pv-shadow);
}
html[data-tenant="pravo"] .keyp{
  background:linear-gradient(125deg,#F4F8FF,#FFFFFF);
  border-top:3px solid #4680DC;
}
html[data-tenant="pravo"] .keyp::before{display:none}
html[data-tenant="pravo"] .keyp .n{color:var(--pv-blue-2)}
html[data-tenant="pravo"] .keyp li i,
html[data-tenant="pravo"] .doc-steps li i,
html[data-tenant="pravo"] .v-steps li i{color:#5278AE}
html[data-tenant="pravo"] .case{
  border-left-color:var(--pv-line-strong);
  background:var(--ink-850);
}
html[data-tenant="pravo"] .go-dialog{background:linear-gradient(145deg,#F4F8FF,#FFFFFF)}
html[data-tenant="pravo"] .go-dialog b{
  letter-spacing:-.02em;
  color:var(--pv-ink);
}

/* ── 7. Диалог: белые карточки, реплика человека — голубой пузырь ── */
html[data-tenant="pravo"] .msg-u{
  background:#EDF4FF;
  border-color:#D3E1F6;
  border-radius:14px 14px 4px 14px;
}
html[data-tenant="pravo"] .ask,
html[data-tenant="pravo"] .verdict{
  border-color:var(--line);
  box-shadow:var(--pv-shadow);
}
html[data-tenant="pravo"] .facts-h{background:var(--ink-750)}
html[data-tenant="pravo"] .calc{border-color:var(--line);background:var(--ink-800)}
html[data-tenant="pravo"] .calc-r.total{background:#EDF4FF}
html[data-tenant="pravo"] .calc-r.total b{color:var(--pv-ink)}
html[data-tenant="pravo"] .chip{border-radius:6px;border-color:#CBD8ED}
html[data-tenant="pravo"] .chip.sel,
html[data-tenant="pravo"] .df-select .chip.on,
html[data-tenant="pravo"] .df-bool .chip.on{
  background:#E9F1FF;
  border-color:#75A0E0;
  color:#164995;
}
html[data-tenant="pravo"] .chip .ic{color:var(--pv-blue-2)}
html[data-tenant="pravo"] .think .tw{color:var(--pv-blue-2)}

/* док диалога: белая полоса с тонкой границей, поле — как на главной */
html[data-tenant="pravo"] .dock::before{display:none}
html[data-tenant="pravo"] .dock{
  background:var(--ink-900);
  border-top:1px solid var(--line-soft);
}
html[data-tenant="pravo"] .dock .comp{
  margin-bottom:max(10px,env(safe-area-inset-bottom,0px));
}

/* ── 8. Кнопки и сегменты ── */
html[data-tenant="pravo"] .btn{border-radius:7px;border-color:#BFCEE6}
html[data-tenant="pravo"] .btn-p{
  background:var(--pv-blue);
  color:#FFFFFF;
  box-shadow:0 3px 7px rgba(20,91,237,.12);
}
html[data-tenant="pravo"] .btn-cta{
  border-color:var(--pv-blue);
  background:var(--pv-blue);
  color:#FFFFFF;
  box-shadow:0 3px 7px rgba(20,91,237,.12);
}
@media (hover:hover){
  html[data-tenant="pravo"] .btn-p:hover:not(:disabled),
  html[data-tenant="pravo"] .btn-cta:hover:not(:disabled){background:var(--pv-blue-2)}
}
html[data-tenant="pravo"] .btn-g{
  border-color:#BFCEE6;
  background:var(--ink-800);
}
html[data-tenant="pravo"] .btn-ask{
  border-color:#BFCEE6;
  background:var(--ink-800);
  box-shadow:var(--pv-shadow);
  color:var(--pv-blue-2);
}
html[data-tenant="pravo"] .seg{border:0;border-radius:8px;padding:4px;gap:4px}
html[data-tenant="pravo"] .seg button{border-radius:6px}
html[data-tenant="pravo"] .seg button[aria-selected="true"]{
  color:#134CAE;
  box-shadow:0 1px 4px rgba(20,57,100,.08);
}
html[data-tenant="pravo"] #ldocSeg button[aria-selected="true"]{color:#134CAE}
html[data-tenant="pravo"] #ldocSeg button[aria-selected="true"]::before{
  background:var(--pv-blue);
  box-shadow:none;
}

/* ── 9. Библиотеки: сцена библиотеки целиком, группы-карточки ── */
html[data-tenant="pravo"] :is(#scr-laws,#scr-docs)::before{
  content:'';
  display:block;
  aspect-ratio:2/1;
  margin-top:calc(-1 * (env(safe-area-inset-top,0px) + 58px));
  margin-bottom:16px;
  background:url(../img/architecture/library-hero.webp) center/contain no-repeat;
}
html[data-tenant="pravo"] .set{
  margin:0 16px;
  border:1px solid var(--line);
  border-radius:8px;
  background:var(--ink-800);
  box-shadow:var(--pv-shadow);
  overflow:hidden;
}
html[data-tenant="pravo"] .set-i{border-top:0;border-bottom:1px solid var(--line-soft)}
html[data-tenant="pravo"] .set-i:last-child{border-bottom:0}
html[data-tenant="pravo"] .set-i > .ic:first-child{color:#466FA7}
@media (hover:hover){
  html[data-tenant="pravo"] .set-i:hover{background:#F5F8FD}
}
html[data-tenant="pravo"] .srch{
  background:var(--ink-800);
  border-color:#BFCEE6;
  border-radius:8px;
}
html[data-tenant="pravo"] .lawdoc-art.open{background:var(--ink-850)}
html[data-tenant="pravo"] .lawdoc-h i{color:var(--pv-blue-2)}
html[data-tenant="pravo"] .docs-hint{
  background:#F4F8FF;
  border-color:var(--line);
}
html[data-tenant="pravo"] .docs-hint .ic{color:var(--pv-blue-2)}

/* Каталог «Право» (scr-law, вне навигации): плашке — сцена библиотеки,
   прежний арт и подложечную иконку не рисуем. */
html[data-tenant="pravo"] #scr-law .plate-gen{
  display:block;
  aspect-ratio:2/1;
  height:auto;
  -webkit-mask-image:none;
  mask-image:none;
  background:url(../img/architecture/library-hero.webp) center/contain no-repeat var(--ink-900);
}
html[data-tenant="pravo"] #scr-law .plate-gen :is(.ic,.artfx){display:none}

/* ── 10. Формы документов ── */
html[data-tenant="pravo"] .df-in,
html[data-tenant="pravo"] .f-in{
  background:#FBFCFE;
  border-color:#BFCFE7;
  border-radius:6px;
}
html[data-tenant="pravo"] .df-in:focus,
html[data-tenant="pravo"] .f-in:focus{border-color:var(--pv-blue)}
html[data-tenant="pravo"] .df-field.err .df-in{border-color:var(--pv-red);background:#F4F7FC}
html[data-tenant="pravo"] .df-err,
html[data-tenant="pravo"] .df-fail{color:var(--pv-red)}
html[data-tenant="pravo"] .df-progress{color:var(--pv-blue-2)}
html[data-tenant="pravo"] .df-label i{color:var(--pv-red)}
html[data-tenant="pravo"] .df-status{border-color:var(--line)}
html[data-tenant="pravo"] .df-x{border-radius:8px}
html[data-tenant="pravo"] .df-repeat .lnk,
html[data-tenant="pravo"] .df-privacy .lnk{color:var(--pv-blue-2)}
html[data-tenant="pravo"] input[type="date"].f-in{color-scheme:light}

/* ── 11. Панель диалогов: белая, с тонкой границей ── */
html[data-tenant="pravo"] .drawer{
  background:var(--ink-900);
  border-right:1px solid var(--line);
}
html[data-tenant="pravo"] .dw-fi{
  border:1px solid #C9DAF1;
  border-radius:7px;
  background:#F8FAFF;
  color:var(--tx-1);
}
html[data-tenant="pravo"] .row-tag{border-color:var(--line)}

/* ── 12. Листы, подтверждение, тост ── */
html[data-tenant="pravo"] .sheet{
  background:var(--ink-900);
  border-color:var(--line);
  box-shadow:0 -10px 40px rgba(18,29,51,.15);
}
html[data-tenant="pravo"] .sheet-grab{background:#BDCDE6}
html[data-tenant="pravo"] .confirm{
  border-color:var(--line);
  border-radius:10px;
  box-shadow:0 20px 55px rgba(8,17,36,.19);
}
html[data-tenant="pravo"] .toast{
  background:#173E7A;
  border-color:#7194C6;
  color:#FFFFFF;
  border-radius:10px;
  box-shadow:0 8px 30px rgba(8,17,36,.19);
}

/* ── 13. Вступление: архитектурные сцены целиком, полосы-точки ── */
html[data-tenant="pravo"] .intro{background:var(--ink-900)}
html[data-tenant="pravo"] .intro-art{background:var(--ink-900);aspect-ratio:2/1}
html[data-tenant="pravo"] .pv-intro-art{
  width:100%;
  height:100%;
  object-fit:contain;
}
html[data-tenant="pravo"] .intro-body .eyebrow{color:var(--tx-3)}
html[data-tenant="pravo"] .intro-dots i{
  width:22px;height:3px;border-radius:2px;
  background:var(--line);
  box-shadow:none;
}
html[data-tenant="pravo"] .intro-dots i.on{width:22px;background:var(--pv-blue)}

/* ── 14. Лист-документ ── */
html[data-tenant="pravo"] .paper::before{
  background:linear-gradient(90deg,var(--pv-blue),var(--pv-line-strong) 55%,var(--pv-blue));
}
html[data-tenant="pravo"] .mark::after{
  background:linear-gradient(90deg,var(--pv-blue),var(--pv-line-strong));
}

/* ── 15. Остальные экраны ── */
html[data-tenant="pravo"] .about-op{border-color:var(--line);background:var(--ink-800)}
html[data-tenant="pravo"] .ldoc h4{color:#204C88}
html[data-tenant="pravo"] .empty .ic{color:#7294C5}
html[data-tenant="pravo"] .netbar{border-radius:8px}
html[data-tenant="pravo"] .ex .ic{color:var(--pv-blue)}
html[data-tenant="pravo"] .greet-say{color:var(--tx-1)}

/* ── 16. Узкие и широкие смартфоны ── */
@media (max-width:374px){
  html[data-tenant="pravo"] .cat{gap:7px;padding:0 10px}
  html[data-tenant="pravo"] .cat-i{grid-template-columns:40px minmax(0,1fr) 6px;gap:4px;padding:12px 4px}
  html[data-tenant="pravo"] .pv-cat-art{width:40px;height:40px}
  html[data-tenant="pravo"] .cat-t b{font-size:0.71875rem}
  html[data-tenant="pravo"] .cat-i[data-section="public_justice"]{grid-template-columns:40px minmax(0,1fr) 10px;gap:10px;padding:10px 12px}
  html[data-tenant="pravo"] .cat-i[data-section="public_justice"] .cat-t b{font-size:0.8125rem}
  html[data-tenant="pravo"] #scr-home .hello h1.brand-h{font-size:1.5rem}
  html[data-tenant="pravo"] .hello.small,
  html[data-tenant="pravo"] .home-dirs{padding-left:16px;padding-right:16px}
}
@media (min-width:500px) and (max-width:759px){
  html[data-tenant="pravo"] .cat-i{grid-template-columns:62px minmax(0,1fr) 13px;gap:12px;padding:14px}
  html[data-tenant="pravo"] .pv-cat-art{width:62px;height:62px}
  html[data-tenant="pravo"] .cat-t b{font-size:0.875rem}
  html[data-tenant="pravo"] .cat-i[data-section="public_justice"]{grid-template-columns:62px minmax(0,1fr) 13px}
  html[data-tenant="pravo"] #scr-home .hello h1.brand-h{font-size:1.875rem}
}
