/* ============================================================================
   Тема «Светлая · матовое стекло» (warm-glass) — компонентный слой.
   Токены живут в блоках :root[data-theme="warm-glass"] рядом с палитрой
   (восемь мест, сторож web/tests_theme.py); здесь — только то, что токенами
   не переключается: литеральные синие рамки и фокус-кольца, градиенты
   плашек, кремовые/синие заливки, тени с синим оттенком, пилюля навигации.
   Правило: каждое правило начинается с html[data-theme="warm-glass"] —
   светлая и тёмная темы этот файл не видят.
   Материал панелей — белый плоский (решение владельца 07.09.2026: «максимально
   белые»), тени нейтральные rgba(31,42,56,…), кромка — волосяная линия 6 %;
   бронза #846645 — только акцент (надписи, иконки, статусы, кант); кант —
   бронзовая нить в 5 px от края, только на денежных поверхностях.
   Подключается в каркасах ПОСЛЕ страничных стилей и ДО et-mobile.css.
   ============================================================================ */

/* ---------- 0. Основа ---------- */
html[data-theme="warm-glass"] body{font-weight:400; letter-spacing:0}
html[data-theme="warm-glass"] body::before{display:none}          /* синие свечения тёмной темы */
html[data-theme="warm-glass"] a{color:var(--ink); text-decoration-color:rgba(25,47,64,.35); text-underline-offset:3px}
html[data-theme="warm-glass"] a.btn, html[data-theme="warm-glass"] a.chip, html[data-theme="warm-glass"] a.badge,
html[data-theme="warm-glass"] nav.top a, html[data-theme="warm-glass"] header.top a, html[data-theme="warm-glass"] a.car,
html[data-theme="warm-glass"] footer.rich a{text-decoration:none}
html[data-theme="warm-glass"] :focus-visible{outline:3px solid #8b6c45; outline-offset:4px}
/* Ссылки внутри текста подвала (телефон, почта, мессенджер) отличаются от текста подчёркиванием,
   а не цветом: чернила ссылки и чернила абзаца дают 1.75:1 (axe link-in-text-block, Т7). */
html[data-theme="warm-glass"] footer.rich p a, html[data-theme="warm-glass"] footer.rich a[href^="tel:"],
html[data-theme="warm-glass"] footer.rich a[href^="mailto:"], html[data-theme="warm-glass"] footer.rich a[target="_blank"],
html[data-theme="warm-glass"] footer.rich .legal a{text-decoration:underline}
html[data-theme="warm-glass"] .eyebrow{font-size:.75rem; font-weight:600; letter-spacing:.17em; color:var(--accent)}
html[data-theme="warm-glass"] ::selection{background:rgba(132,102,69,.18)}

/* ---------- 1. Навигация: компактная белая пилюля ---------- */
html[data-theme="warm-glass"] nav.top,
html[data-theme="warm-glass"] header.top{
  top:10px; padding:6px 8px 6px 18px; gap:2px;
  background:rgba(255,255,255,.96); border:1px solid rgba(255,255,255,.92); outline:1px solid rgba(25,47,64,.06);
  box-shadow:0 18px 40px -26px rgba(31,42,56,.34), 0 4px 10px -8px rgba(31,42,56,.16), inset 0 1px 0 #fff;
}
html[data-theme="warm-glass"] nav.top a, html[data-theme="warm-glass"] header.top a{
  font-size:13px; font-weight:500; letter-spacing:0; padding:7px 11px; color:var(--ink-soft)}
html[data-theme="warm-glass"] nav.top a:hover, html[data-theme="warm-glass"] header.top a:hover{background:rgba(25,47,64,.05); color:var(--ink)}
html[data-theme="warm-glass"] nav.top .cta, html[data-theme="warm-glass"] header.top .cta{
  background:linear-gradient(135deg,#345569 0%,#1b3548 65%,#152c3e 100%); border:1px solid rgba(18,45,66,.8); color:#fff;
  padding:8px 16px; font-weight:600; box-shadow:0 14px 26px -15px rgba(18,49,74,.65), inset 0 1px 0 rgba(255,255,255,.24)}
html[data-theme="warm-glass"] nav.top .cta:hover, html[data-theme="warm-glass"] header.top .cta:hover{background:linear-gradient(135deg,#3a5d72,#1f3b50 65%,#183042); filter:brightness(1.06)}
html[data-theme="warm-glass"] nav.top .brand b, html[data-theme="warm-glass"] header.top .brand b{color:var(--accent)}
html[data-theme="warm-glass"] .tgl, html[data-theme="warm-glass"] header.top .tgl,
html[data-theme="warm-glass"] nav.top .bell, html[data-theme="warm-glass"] header.top .bell{
  background:#fff; border:1px solid rgba(25,47,64,.10); color:var(--ink-soft); box-shadow:0 8px 14px -12px rgba(31,42,56,.6)}
html[data-theme="warm-glass"] .tgl:hover, html[data-theme="warm-glass"] nav.top .bell:hover{color:var(--accent)}
html[data-theme="warm-glass"] .skip-link{background:#1b3548}

/* ---------- 2. Кнопки, чипы, бейджи ---------- */
html[data-theme="warm-glass"] .btn{font-weight:600; letter-spacing:.01em; border-radius:12px}
/* Ссылка-кнопка без модификатора: правило `a{color:var(--ink)}` выше сильнее `.btn{color:#fff}` каркаса, и
   «На главную» на странице 403 читалась тёмным по тёмному (замечание владельца 15.09.2026, ПР6-в).
   ghost/secondary ниже сильнее этого правила и остаются тёмными на белом. */
html[data-theme="warm-glass"] a.btn{color:#fff}
html[data-theme="warm-glass"] .btn.primary, html[data-theme="warm-glass"] .btn.big.primary{
  background:linear-gradient(135deg,#345569 0%,#1b3548 65%,#152c3e 100%); border:1px solid rgba(18,45,66,.8); color:#fff;
  box-shadow:0 14px 26px -15px rgba(18,49,74,.65), inset 0 1px 0 rgba(255,255,255,.24), inset 0 -1px 0 rgba(0,0,0,.15)}
html[data-theme="warm-glass"] .btn.primary:hover{transform:translateY(-3px); filter:brightness(1.08);
  box-shadow:0 20px 32px -16px rgba(18,49,74,.7), inset 0 1px 0 rgba(255,255,255,.24)}
html[data-theme="warm-glass"] .btn.ghost, html[data-theme="warm-glass"] .btn.secondary{
  background:#fff; color:var(--ink); border:1px solid rgba(25,47,64,.12);
  box-shadow:0 12px 22px -16px rgba(31,42,56,.4), inset 0 1px 0 #fff; -webkit-backdrop-filter:none; backdrop-filter:none}
html[data-theme="warm-glass"] .btn.ghost:hover, html[data-theme="warm-glass"] .btn.secondary:hover{background:#fff; transform:translateY(-3px);
  box-shadow:0 16px 26px -16px rgba(31,42,56,.5), inset 0 1px 0 #fff}
html[data-theme="warm-glass"] .btn:hover{box-shadow:0 16px 26px -16px rgba(31,42,56,.5)}
html[data-theme="warm-glass"] .badge{font-weight:600; letter-spacing:.01em; border-radius:9px; padding:5px 10px}
html[data-theme="warm-glass"] .badge.ok{border:1px solid rgba(43,96,86,.16)}
html[data-theme="warm-glass"] .badge.warn{border:1px solid rgba(113,86,53,.18)}
html[data-theme="warm-glass"] .badge.glass, html[data-theme="warm-glass"] .badge.blue{background:#fff; color:var(--ink-soft); border:1px solid rgba(25,47,64,.10)}
html[data-theme="warm-glass"] .chip{background:#fff; border:1px solid rgba(25,47,64,.08); color:var(--ink-soft);
  box-shadow:0 8px 14px -12px rgba(31,42,56,.5), inset 0 1px 0 #fff}
html[data-theme="warm-glass"] .chip:hover{color:var(--ink); background:#fff}
html[data-theme="warm-glass"] .chip.on{background:#1b3548; color:#fff; border-color:#1b3548}

/* ---------- 3. Поля ввода: белые, фокус — бронза ---------- */
html[data-theme="warm-glass"] .field, html[data-theme="warm-glass"] input, html[data-theme="warm-glass"] select, html[data-theme="warm-glass"] textarea,
html[data-theme="warm-glass"] .field-wrap input, html[data-theme="warm-glass"] .assist-input input{
  background:#fff; border:1px solid rgba(25,47,64,.10); box-shadow:inset 0 1px 3px rgba(31,42,56,.06)}
html[data-theme="warm-glass"] .field:focus, html[data-theme="warm-glass"] input:focus, html[data-theme="warm-glass"] select:focus, html[data-theme="warm-glass"] textarea:focus,
html[data-theme="warm-glass"] .field-wrap input:focus, html[data-theme="warm-glass"] .assist-input input:focus{
  border-color:rgba(132,102,69,.55); box-shadow:0 0 0 4px rgba(132,102,69,.14)}

/* ИИ-строка каталога — ОДНА пилюля, а не поле внутри поля (Т11).
   Замечание владельца 09.09.2026 со скриншотом каталога: «слова не должны примыкать к
   границе, сейчас прям неаккуратно». Дело не в отступе: строка подбора нарисована эталоном
   как одна пилюля — круг-искра, текст, тёмная кнопка, — и базовое правило даёт её полю
   `border:none; background:transparent` с отступом 2px, потому что воздух держит сама
   пилюля. Бланкетное правило выше покрасило это поле белым и обвело рамкой: рамка встала
   ровно по краю текста, и два пикселя читались обрезкой. Поле возвращаем в поток пилюли,
   а фокус переносим на саму пилюлю — иначе мышью непонятно, куда встала каретка (с
   клавиатуры его и так рисует общее правило :focus-visible). */
html[data-theme="warm-glass"] .ai-line input,
html[data-theme="warm-glass"] .ai-line input:focus{
  background:transparent; border:none; box-shadow:none; padding:10px 14px;
  /* Кольцо фокуса с клавиатуры (общее правило :focus-visible) обводит САМО поле, и в
     пилюле оно обязано повторять её форму: прямоугольник в скруглении читается той же
     небрежностью, из-за которой заведена итерация. */
  border-radius:60px; outline-offset:2px}
html[data-theme="warm-glass"] .ai-line:focus-within{
  border-color:rgba(132,102,69,.35); box-shadow:var(--lift-1), 0 0 0 4px rgba(132,102,69,.12)}

html[data-theme="warm-glass"] .send-btn{background:#fff; border:1px solid rgba(25,47,64,.10); color:var(--ink-soft)}
html[data-theme="warm-glass"] .send-btn.active{background:linear-gradient(135deg,#345569,#1b3548 65%,#152c3e); color:#fff; border-color:rgba(18,45,66,.8)}

/* ---------- 4. Панели и карточки: белое, нейтральная тень, без размытия ---------- */
html[data-theme="warm-glass"] .car,
html[data-theme="warm-glass"] .card,
html[data-theme="warm-glass"] .panel,
html[data-theme="warm-glass"] .req,
html[data-theme="warm-glass"] .deal-card,
html[data-theme="warm-glass"] .card-g,
html[data-theme="warm-glass"] .how .step,
html[data-theme="warm-glass"] .rev,
html[data-theme="warm-glass"] .office,
html[data-theme="warm-glass"] details.faq,
html[data-theme="warm-glass"] .faq-card,
html[data-theme="warm-glass"] .shield .node,
html[data-theme="warm-glass"] .save-strip,
html[data-theme="warm-glass"] .plan,
html[data-theme="warm-glass"] .tm,
html[data-theme="warm-glass"] .budget,
html[data-theme="warm-glass"] .h-demo,
html[data-theme="warm-glass"] .kpi,
html[data-theme="warm-glass"] table,
html[data-theme="warm-glass"] .messages li,
html[data-theme="warm-glass"] .alert-card{
  background:#fff; border:1px solid rgba(255,255,255,.9); outline:1px solid rgba(25,47,64,.06);
  -webkit-backdrop-filter:none; backdrop-filter:none;
  box-shadow:0 26px 48px -32px rgba(31,42,56,.26), 0 6px 14px -10px rgba(31,42,56,.12), inset 0 1px 0 #fff}
html[data-theme="warm-glass"] .car:hover, html[data-theme="warm-glass"] .deal-card:hover, html[data-theme="warm-glass"] .h-demo:hover{
  box-shadow:0 40px 62px -36px rgba(31,42,56,.32), 0 10px 20px -12px rgba(31,42,56,.16), inset 0 1px 0 #fff}
html[data-theme="warm-glass"] .kpi div, html[data-theme="warm-glass"] .stats div{background:#fff; -webkit-backdrop-filter:none; backdrop-filter:none}
html[data-theme="warm-glass"] .kpi, html[data-theme="warm-glass"] .stats{background:rgba(25,47,64,.06)}
html[data-theme="warm-glass"] .alert-card{border:1px solid rgba(132,102,69,.35)}
html[data-theme="warm-glass"] .scx, html[data-theme="warm-glass"] .msg.ai, html[data-theme="warm-glass"] .typing{
  background:#fff; border:1px solid rgba(25,47,64,.07)}
html[data-theme="warm-glass"] .shield .node.bank,
html[data-theme="warm-glass"] .scen.win{
  background:#fff; border:1px solid rgba(25,47,64,.10)}
/* Денежные поверхности — кант: белое поле и бронзовая нить в 5 px от края. */
html[data-theme="warm-glass"] .calc-break,
html[data-theme="warm-glass"] .scen.win,
html[data-theme="warm-glass"] .shield .node.bank{position:relative}
html[data-theme="warm-glass"] .calc-break::before,
html[data-theme="warm-glass"] .scen.win::before,
html[data-theme="warm-glass"] .shield .node.bank::before{
  content:""; position:absolute; inset:5px; pointer-events:none; border-radius:calc(var(--r-md) - 6px); border:1px solid rgba(132,102,69,.18)}
html[data-theme="warm-glass"] .calc-break{background:#fff; border:1px solid rgba(25,47,64,.10)}
html[data-theme="warm-glass"] th{background:#fff; color:var(--accent); font-weight:600; letter-spacing:.12em}
html[data-theme="warm-glass"] .cmp .win-row td{background:rgba(132,102,69,.06)}

/* ---------- 5. Плашка «нет фото»: нейтральная, с подписью чернилами ---------- */
html[data-theme="warm-glass"] .ph{background:linear-gradient(150deg,#ecebe6 0%,#e2e0d9 100%)}
html[data-theme="warm-glass"] .ph::before{color:var(--ink-soft)}
html[data-theme="warm-glass"] .ph::after{color:rgba(25,47,64,.35)}
html[data-theme="warm-glass"] .car .ph .tag{background:#fff; color:var(--ink); box-shadow:0 2px 8px rgba(31,42,56,.2)}
html[data-theme="warm-glass"] .fav{background:#fff; color:#9aa7b3; box-shadow:0 2px 8px rgba(31,42,56,.2)}
html[data-theme="warm-glass"] .lb-frame .ph > img{background:#e2e0d9}

/* ---------- 6. Чат подборщика и деловой чат ---------- */
html[data-theme="warm-glass"] .chat-head .avatar, html[data-theme="warm-glass"] .ai-row .a{
  color:var(--accent); background:#fff; border:1px solid rgba(255,255,255,.98); border-radius:13px;
  box-shadow:0 9px 14px -9px rgba(31,42,56,.4), 0 2px 4px rgba(31,42,56,.05), inset 0 1px 0 #fff, inset 0 -1px 1px rgba(25,47,64,.08)}
html[data-theme="warm-glass"] .msg.user{background:#fff; color:var(--ink); border:1px solid rgba(25,47,64,.08);
  box-shadow:0 8px 16px -14px rgba(31,42,56,.6), inset 0 1px 0 #fff}
html[data-theme="warm-glass"] .msg.ai{border:1px solid rgba(132,102,69,.2)}
html[data-theme="warm-glass"] .msg.mine{background:#fff; border:1px solid rgba(25,47,64,.08)}
html[data-theme="warm-glass"] .msg{background:#fff; border:1px solid rgba(132,102,69,.18)}
html[data-theme="warm-glass"] .demo-foot{background:#fff; border:1px solid rgba(25,47,64,.08); color:var(--ink-soft)}
html[data-theme="warm-glass"] .demo-send{background:#fff; color:var(--ink); border:1px solid rgba(25,47,64,.10); box-shadow:0 8px 14px -12px rgba(31,42,56,.6)}

/* ---------- 7. Модалки, лайтбокс, FAB, подвал ---------- */
html[data-theme="warm-glass"] .modal{background:#fff; border:1px solid rgba(255,255,255,.9); outline:1px solid rgba(25,47,64,.06);
  box-shadow:0 60px 110px -40px rgba(31,42,56,.45), 0 12px 28px -14px rgba(31,42,56,.2), inset 0 1px 0 #fff;
  -webkit-backdrop-filter:none; backdrop-filter:none}
html[data-theme="warm-glass"] .modal .m-close{background:#fff; border:1px solid rgba(25,47,64,.10)}
html[data-theme="warm-glass"] .modal .m-foot{background:#fff}
html[data-theme="warm-glass"] .fab{background:linear-gradient(135deg,#345569 0%,#1b3548 65%,#152c3e 100%);
  box-shadow:0 18px 30px -14px rgba(18,49,74,.7), inset 0 1px 0 rgba(255,255,255,.2)}
html[data-theme="warm-glass"] .fab:hover{box-shadow:0 24px 36px -14px rgba(18,49,74,.75)}
html[data-theme="warm-glass"] footer.rich{border-top-color:rgba(25,47,64,.10)}
html[data-theme="warm-glass"] .foot-h{color:var(--accent); font-weight:600; letter-spacing:.17em}

/* ---------- 8. Схемы, таймлайны, прогресс ---------- */
html[data-theme="warm-glass"] .tl li.cur .dot{box-shadow:0 0 0 5px rgba(132,102,69,.18)}
html[data-theme="warm-glass"] .tl .dot{background:#fff}
/* Чип «Безопасная сделка» (Т8): медальон-щит бронзой, белая пилюля с внутренней нитью, спокойный набор. */
html[data-theme="warm-glass"] .btn-shield{position:relative; color:var(--ink); background:#fff; border:1px solid rgba(25,47,64,.10);
  padding:6px 20px 6px 7px; gap:12px; font-size:11.5px; font-weight:600; letter-spacing:.1em;
  box-shadow:0 18px 30px -22px rgba(31,42,56,.45), inset 0 1px 0 #fff; -webkit-backdrop-filter:none; backdrop-filter:none}
html[data-theme="warm-glass"] .btn-shield::before{content:""; position:absolute; inset:3px; border-radius:inherit; pointer-events:none;
  border:1px solid rgba(132,102,69,.22)}
html[data-theme="warm-glass"] .btn-shield svg{width:32px; height:32px; padding:8px; box-sizing:border-box; border-radius:50%; color:#fff;
  background:linear-gradient(145deg,#a8906a 0%,#846645 60%,#6f5439 100%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.35), 0 8px 14px -9px rgba(132,102,69,.9)}
html[data-theme="warm-glass"] .btn-shield:hover{transform:translateY(-2px); border-color:rgba(132,102,69,.4);
  box-shadow:0 22px 34px -22px rgba(31,42,56,.55), inset 0 1px 0 #fff}
html[data-theme="warm-glass"] .steps-m .n, html[data-theme="warm-glass"] .how .no{font-family:var(--font-display); color:var(--accent); font-size:1.3rem; letter-spacing:0}
html[data-theme="warm-glass"] .g-list .gi{background:#fff; color:var(--accent); border:1px solid rgba(132,102,69,.35); font-weight:600;
  box-shadow:inset 0 1px 0 #fff, 0 4px 10px -8px rgba(132,102,69,.7)}
html[data-theme="warm-glass"] .route .ship, html[data-theme="warm-glass"] .yrs .th{box-shadow:0 4px 12px rgba(31,42,56,.25)}
html[data-theme="warm-glass"] .rev .stars{color:var(--accent); letter-spacing:.16em}
/* Инициалы — чернилами, кольцо — бронзой: карточка отзыва в ленте телефона полупрозрачна, и бронза 12px
   на ней падала до 3:1 (axe, Т7); чернила держат 4.5:1 и сквозь приглушение. */
html[data-theme="warm-glass"] .rev .who i, html[data-theme="warm-glass"] .tm .ava, html[data-theme="warm-glass"] .team .ava{
  background:#fff; color:var(--ink); border:1px solid rgba(132,102,69,.3); box-shadow:inset 0 1px 0 #fff}
html[data-theme="warm-glass"] .office .role, html[data-theme="warm-glass"] .tm .role{color:var(--accent); font-weight:600; letter-spacing:.12em}

/* ---------- 9. Главная ---------- */
html[data-theme="warm-glass"] .h-demo{border-radius:26px; animation:none}
html[data-theme="warm-glass"] .cat .ci{background:#fff; border:1px solid rgba(255,255,255,.98); outline:0; color:var(--accent);
  box-shadow:0 9px 14px -9px rgba(31,42,56,.4), 0 2px 4px rgba(31,42,56,.05), inset 0 1px 0 #fff, inset 0 -1px 1px rgba(25,47,64,.08);
  -webkit-backdrop-filter:none; backdrop-filter:none}
html[data-theme="warm-glass"] .cat:hover .ci{box-shadow:0 14px 20px -10px rgba(31,42,56,.45), inset 0 1px 0 #fff}

html[data-theme="warm-glass"] .ticker{background:#fff; border:1px solid rgba(25,47,64,.06); box-shadow:0 12px 24px -20px rgba(31,42,56,.5)}

/* Финальный призыв — белая панель с кантом вместо тёмно-синего блока. */
html[data-theme="warm-glass"] .final{position:relative; background:#fff; color:var(--ink); border:1px solid rgba(255,255,255,.9); outline:1px solid rgba(25,47,64,.06);
  box-shadow:0 40px 62px -36px rgba(31,42,56,.32), 0 10px 20px -12px rgba(31,42,56,.16), inset 0 1px 0 #fff}
html[data-theme="warm-glass"] .final::after{content:""; position:absolute; inset:5px; width:auto; height:auto; border-radius:calc(var(--r-xl) - 6px);
  background:none; filter:none; border:1px solid rgba(132,102,69,.18); pointer-events:none; right:5px; top:5px}
html[data-theme="warm-glass"] .final h2{color:var(--ink)}
html[data-theme="warm-glass"] .final p{color:var(--ink-soft)}
html[data-theme="warm-glass"] .final .btn.primary{background:linear-gradient(135deg,#345569 0%,#1b3548 65%,#152c3e 100%) !important; color:#fff !important}
html[data-theme="warm-glass"] .final .btn.ghost{background:#fff !important; color:var(--ink) !important; border-color:rgba(25,47,64,.12) !important}
html[data-theme="warm-glass"] .final input{background:#fff !important; color:var(--ink) !important; border:1px solid rgba(25,47,64,.12) !important}
html[data-theme="warm-glass"] .final span, html[data-theme="warm-glass"] .final a{color:var(--ink-soft) !important}
html[data-theme="warm-glass"] .final form span a{color:var(--ink) !important}

/* Призыв журнала: et-journal.css несёт синий литерал (#123a6b) — здесь градиент темы и текст без голубизны. */
html[data-theme="warm-glass"] .jr-cta{background:linear-gradient(135deg,#345569 0%,#1b3548 65%,#152c3e 100%); color:#fff;
  box-shadow:0 26px 48px -32px rgba(31,42,56,.4)}
html[data-theme="warm-glass"] .jr-cta p{color:rgba(255,255,255,.78)}

/* ---------- 10. Мобильная навигация: компактнее ---------- */
@media (max-width:760px){
  html[data-theme="warm-glass"] nav.top, html[data-theme="warm-glass"] header.top{padding:5px 6px 5px 14px}
}
@media (prefers-reduced-motion:reduce){
  html[data-theme="warm-glass"] .btn:hover, html[data-theme="warm-glass"] .chip:hover{transform:none}
}

/* ---------- 11. Карточка лота: панель стоимости — кант, кредитная строка — бронза ---------- */
html[data-theme="warm-glass"] .buy{background:#fff; border:1px solid rgba(25,47,64,.10); outline:0;
  -webkit-backdrop-filter:none; backdrop-filter:none;
  box-shadow:0 38px 58px -34px rgba(31,42,56,.34), 0 6px 12px -6px rgba(31,42,56,.12)}
html[data-theme="warm-glass"] .buy::before{content:""; position:absolute; inset:5px; pointer-events:none;
  border-radius:calc(var(--r-lg) - 6px); border:1px solid rgba(132,102,69,.18)}
html[data-theme="warm-glass"] .buy > *{position:relative}
html[data-theme="warm-glass"] .buy .scen.win::before{display:none}   /* кант один — на панели, не на строке внутри */
html[data-theme="warm-glass"] .buy .scen.win{border:1px solid rgba(25,47,64,.08)}
html[data-theme="warm-glass"] .buy .cd div{background:#fff; border:1px solid rgba(25,47,64,.08)}
/* Кредитная строка: пунктир снят (решение владельца 08.09 — «дешевит»); вместо него белая панель,
   контур и внутренняя бронзовая нить — тот же кант, что у денежных поверхностей. */
html[data-theme="warm-glass"] .credit-line{position:relative; border:1px solid rgba(25,47,64,.10); background:#fff;
  box-shadow:0 12px 22px -18px rgba(31,42,56,.4), inset 0 1px 0 #fff}
html[data-theme="warm-glass"] .credit-line::before{content:""; position:absolute; inset:3px; pointer-events:none;
  border-radius:calc(var(--r-md) - 3px); border:1px solid rgba(132,102,69,.22)}
html[data-theme="warm-glass"] .credit-line:hover{background:#fff; border-color:rgba(132,102,69,.4);
  box-shadow:0 16px 26px -18px rgba(31,42,56,.5), inset 0 1px 0 #fff}
html[data-theme="warm-glass"] .gal .main.has-img > img, html[data-theme="warm-glass"] .ph.has-img > img{background:#e2e0d9}
html[data-theme="warm-glass"] .mini-steps i{background:rgba(25,47,64,.18)}
html[data-theme="warm-glass"] .buybar{background:#fff; border-top:1px solid rgba(25,47,64,.08); box-shadow:0 -12px 30px -20px rgba(31,42,56,.4)}

/* Плашка «О данных» (Т8): белая, значок в бронзовом кольце. */
html[data-theme="warm-glass"] .data-plate{background:#fff; border:1px solid rgba(25,47,64,.08)}
html[data-theme="warm-glass"] .data-plate .dp-ic{background:#fff; color:var(--accent); border:1px solid rgba(132,102,69,.3)}

/* Пунктирных рамок в теме нет (Т9): пилюля оценки на карте, плашки журнала, плитка «все» полки
   и подсказки — сплошная нить и белое поле. */
html[data-theme="warm-glass"] .rl-pill{background:#fff; border:1px solid rgba(132,102,69,.3); color:var(--warn); font-weight:600; letter-spacing:.02em;
  box-shadow:0 8px 16px -14px rgba(31,42,56,.45), inset 0 1px 0 #fff}
html[data-theme="warm-glass"] .rl-pill.deal{background:#fff; border-color:rgba(132,102,69,.3); color:var(--accent)}
html[data-theme="warm-glass"] .jr-ph{border:1px solid rgba(25,47,64,.08); background:linear-gradient(150deg,#ecebe6 0%,#e2e0d9 100%)}
html[data-theme="warm-glass"] .jr-toc-issue a{border-bottom:1px solid rgba(25,47,64,.08)}
html[data-theme="warm-glass"] .shelf .sh-all{border:1px solid rgba(132,102,69,.3); background:#fff}

/* ---------- 12. Кабинет: сделка, маршрут, деньги ---------- */
html[data-theme="warm-glass"] .deal{background:#fff; border:1px solid rgba(255,255,255,.9); outline:1px solid rgba(25,47,64,.06);
  -webkit-backdrop-filter:none; backdrop-filter:none; box-shadow:0 26px 48px -32px rgba(31,42,56,.26), 0 6px 14px -10px rgba(31,42,56,.12)}
html[data-theme="warm-glass"] .route{background:#fff; border:1px solid rgba(25,47,64,.08)}
html[data-theme="warm-glass"] .route .ship{background:linear-gradient(135deg,#345569,#1b3548 65%,#152c3e)}
html[data-theme="warm-glass"] .tr-row .sum, html[data-theme="warm-glass"] .deal .paid, html[data-theme="warm-glass"] .price{color:var(--ink)}
/* Полоса плана (ТЗ C10): исполнено — зелёный шалфей, поступило — бронза, план — светлый шалфей. */
html[data-theme="warm-glass"] .money-bar .mb-track, html[data-theme="warm-glass"] .money-bar .mb-legend .mb-plan{background:#d0dcd7}
html[data-theme="warm-glass"] .money-bar .mb-received{background:#a99b7d; opacity:1}
html[data-theme="warm-glass"] .money-bar .mb-settled{background:#356159}

/* ---------- 13. Движение (Т6): парение карточки подборщика, наклон денежных панелей ---------- */
@keyframes wg-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
html[data-theme="warm-glass"] .hero-grid .h-demo{animation:wg-float 8s ease-in-out infinite}
html[data-theme="warm-glass"] .wg-depth{
  transform:perspective(1200px) rotateX(var(--wg-rx,0deg)) rotateY(var(--wg-ry,0deg));
  transition:transform .55s cubic-bezier(.22,.61,.36,1)}
html[data-theme="warm-glass"] .h-demo.wg-depth::after{content:""; position:absolute; inset:0; border-radius:inherit; pointer-events:none;
  background:radial-gradient(320px circle at var(--wg-mx,70%) var(--wg-my,18%), rgba(255,255,255,.55), transparent 60%)}
/* Блик кладётся ПОД содержимое (замечание владельца 09.09: «засвечиваете текст в чате»).
   `::after` без слоя рисуется ПОВЕРХ потока, и белая заливка в 55% садилась на буквы
   переписки — сильнее всего у правого верхнего угла, где блик стоит по умолчанию
   (--wg-mx 70%, --wg-my 18%): конец строки выцветал, начало оставалось чёрным. Приём тот
   же, что у денежной панели (`.buy > *`): дети получают свой слой, блик остаётся на
   поверхности панели и по-прежнему виден в её прозрачных местах. */
html[data-theme="warm-glass"] .wg-depth > *{position:relative; z-index:1}
html[data-theme="warm-glass"][data-ui-motion="off"] .h-demo, html[data-theme="warm-glass"][data-ui-motion="off"] .wg-depth{animation:none; transform:none; transition:none}
@media (prefers-reduced-motion:reduce){
  html[data-theme="warm-glass"] .hero-grid .h-demo{animation:none}
  html[data-theme="warm-glass"] .wg-depth{transform:none; transition:none}
}
