/* Квиз «Получите презентацию» на гео-страницах аренды и подборке — стили (geo-kviz.js, mg_kviz_geo_html).
   Перенесены из утверждённого макета Дизайнера (~/zadachi/kviz-geo/www/m/kviz-geo.css, 27.09) без изменений вида;
   убраны только правила элементов, которых в разметке сайта нет (чипы, .mgk__foto) и отладочная вуаль. */
/* ---- общее для всех вариантов ---- */
#mg_kviz{--ak:#90bb59;--ak-t:#4f7a12;--ink:#141a10;--muted:#4b5443;--line:#c9d3be;--line-h:#a3b196;--pole:#fff;
  --err:#c20;--kn-bg:#90bb59;--kn-bg-h:#9cc766;--kn-t:#141a10;--fokus:#4f7a12;--seg-off:#dde5d4;
  --ease:cubic-bezier(.23,1,.32,1);
  padding:10px 0 40px;color:var(--ink);font-family:'Ubuntu',Arial,sans-serif;-webkit-tap-highlight-color:transparent}
/* тема тянет фото следующего блока (.object img) на 90 px вверх — на >1024 оставляем ему место */
@media (min-width:1025px){ #mg_kviz{padding-bottom:90px} }
#mg_kviz *,#mg_kviz *::before,#mg_kviz *::after{box-sizing:border-box}
#mg_kviz ::selection{background:rgba(144,187,89,.4);color:inherit}
#mg_kviz .mgk__box{position:relative}
#mg_kviz .mgk__zag{margin:0;font:900 40px/1.02 'RoadRadio',Arial,sans-serif;text-transform:uppercase;letter-spacing:-.005em;text-wrap:balance}
#mg_kviz .mgk__pod{margin:14px 0 0;font-size:18px;line-height:1.45;text-wrap:pretty}
#mg_kviz .mgk__forma{position:relative;margin:0}

/* шаги лежат в одной ячейке сетки: высота блока не прыгает при переключении */
#mg_kviz .mgk__shagi{display:grid}
#mg_kviz .mgk__shag{grid-area:1/1;min-width:0;transition:opacity .26s var(--ease),transform .26s var(--ease),visibility 0s}
#mg_kviz:not([data-vse])[data-shag="1"] .mgk__shag[data-shag="2"],
#mg_kviz:not([data-vse])[data-shag="2"] .mgk__shag[data-shag="1"]{visibility:hidden;opacity:0;pointer-events:none;
  transition:opacity .14s ease-out,transform .14s ease-out,visibility 0s .14s}
#mg_kviz:not([data-vse])[data-shag="1"] .mgk__shag[data-shag="2"]{transform:translateX(20px)}
#mg_kviz:not([data-vse])[data-shag="2"] .mgk__shag[data-shag="1"]{transform:translateX(-20px)}

#mg_kviz .mgk__verh{display:flex;align-items:center;gap:12px;min-height:32px;margin:0 0 12px}
#mg_kviz .mgk__nomer{font-size:14px;font-weight:500;color:var(--muted);font-variant-numeric:tabular-nums}
#mg_kviz .mgk__seg{display:flex;gap:4px}
#mg_kviz .mgk__seg i{position:relative;display:block;width:28px;height:4px;border-radius:2px;background:var(--seg-off);overflow:hidden}
#mg_kviz .mgk__seg i::after{content:"";position:absolute;inset:0;background:var(--ak);transform:scaleX(0);transform-origin:left;transition:transform .36s var(--ease) .08s}
#mg_kviz .mgk__shag[data-shag="1"] .mgk__seg i:first-child::after,
#mg_kviz .mgk__shag[data-shag="2"] .mgk__seg i:first-child::after,
#mg_kviz[data-shag="2"] .mgk__shag[data-shag="2"] .mgk__seg i:last-child::after{transform:scaleX(1)}
#mg_kviz .mgk__nazad{margin:0 -6px 0 auto;display:inline-flex;align-items:center;gap:6px;min-height:40px;padding:0 6px;border:0;background:none;
  font:500 15px/1 'Ubuntu',Arial,sans-serif;color:var(--muted);cursor:pointer;border-radius:8px;touch-action:manipulation;user-select:none;-webkit-user-select:none}
#mg_kviz .mgk__nazad svg{width:18px;height:18px;transition:transform .2s var(--ease)}
@media (hover:hover) and (pointer:fine){ #mg_kviz .mgk__nazad:hover{color:var(--ink)} #mg_kviz .mgk__nazad:hover svg{transform:translateX(-3px)} }
#mg_kviz .mgk__nazad:focus-visible{outline:2px solid var(--fokus);outline-offset:1px}

#mg_kviz .mgk__vopros{display:block;margin:0 0 16px;font:700 21px/1.3 'Ubuntu',Arial,sans-serif;color:var(--ink);text-wrap:balance}
#mg_kviz .mgk__polya{display:grid;grid-template-columns:1fr 1fr;gap:12px}
#mg_kviz .mgk__pole{display:block;margin:0;font-weight:400}
#mg_kviz .mgk__metka{display:block;margin:0 0 6px;font-size:14px;font-weight:500;color:var(--muted)}
#mg_kviz .mgk__vvod{position:relative;display:block}
#mg_kviz .mgk__vvod input{display:block;width:100%;height:54px;margin:0;padding:0 46px 0 16px;border:1.5px solid var(--line);border-radius:12px;
  background:var(--pole);color:var(--ink);font:500 19px/1 'Ubuntu',Arial,sans-serif;font-variant-numeric:tabular-nums;caret-color:var(--ak-t);
  outline:none;box-shadow:none;-webkit-appearance:none;appearance:none;transition:border-color .16s ease,box-shadow .16s ease,background-color .16s ease}
#mg_kviz .mgk__vvod--tel input{padding-right:16px;letter-spacing:.01em}
#mg_kviz .mgk__vvod input::placeholder{color:#6b7462;opacity:1}
#mg_kviz .mgk__ed{position:absolute;right:16px;top:50%;transform:translateY(-50%);font-size:16px;color:var(--muted);pointer-events:none}
@media (hover:hover) and (pointer:fine){ #mg_kviz .mgk__vvod input:hover:not(:focus){border-color:var(--line-h)} }
#mg_kviz .mgk__vvod input:focus{border-color:var(--ak-t);box-shadow:0 0 0 4px rgba(144,187,89,.3)}
#mg_kviz .mgk__vvod input[aria-invalid="true"]{border-color:var(--err)}
#mg_kviz .mgk__vvod input[aria-invalid="true"]:focus{box-shadow:0 0 0 4px rgba(204,34,0,.15)}

#mg_kviz .mgk__osh{display:flex;align-items:flex-start;gap:8px;margin-top:10px;font-size:14px;line-height:1.35;color:var(--err)}
#mg_kviz .mgk__osh::before{content:"";flex:none;width:16px;height:16px;margin-top:1px;background:currentColor;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M8 0a8 8 0 110 16A8 8 0 018 0zm0 10.5a1.1 1.1 0 100 2.2 1.1 1.1 0 000-2.2zM8 3.5c-.6 0-1 .5-1 1l.3 4.3a.7.7 0 001.4 0L9 4.5c0-.5-.4-1-1-1z'/%3E%3C/svg%3E") center/contain no-repeat;
          mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M8 0a8 8 0 110 16A8 8 0 018 0zm0 10.5a1.1 1.1 0 100 2.2 1.1 1.1 0 000-2.2zM8 3.5c-.6 0-1 .5-1 1l.3 4.3a.7.7 0 001.4 0L9 4.5c0-.5-.4-1-1-1z'/%3E%3C/svg%3E") center/contain no-repeat}
#mg_kviz .mgk__osh:empty{display:none}
#mg_kviz .mgk__osh:not(:empty){animation:mgk-vhod .22s var(--ease)}
@keyframes mgk-vhod{from{opacity:0;transform:translateY(-4px)}}

#mg_kviz .mgk__knopka{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:10px;margin:20px 0 0;min-height:56px;padding:0 30px;
  border:0;border-radius:12px;background:var(--kn-bg);color:var(--kn-t);font:900 17px/1 'RoadRadio',Arial,sans-serif;letter-spacing:.04em;
  text-transform:uppercase;white-space:nowrap;cursor:pointer;touch-action:manipulation;user-select:none;-webkit-user-select:none;
  transition:transform .14s var(--ease),background-color .18s ease,opacity .18s ease}
#mg_kviz .mgk__knopka svg{flex:none;width:20px;height:20px}
#mg_kviz .mgk__strelka{transition:transform .2s var(--ease)}
@media (hover:hover) and (pointer:fine){ #mg_kviz .mgk__knopka:hover{background:var(--kn-bg-h)} #mg_kviz .mgk__knopka:hover .mgk__strelka{transform:translateX(3px)} }
#mg_kviz .mgk__knopka:active{transform:scale(.97)}
#mg_kviz .mgk__knopka:focus-visible{outline:3px solid var(--fokus);outline-offset:3px}
#mg_kviz .mgk__krug{display:none}
#mg_kviz .mgk__knopka[aria-busy="true"]{cursor:progress;opacity:.9}
#mg_kviz .mgk__knopka[aria-busy="true"] .mgk__krug{display:block;animation:mgk-krug .7s linear infinite}
@keyframes mgk-krug{to{transform:rotate(360deg)}}

#mg_kviz .mgk__soglasie{margin:16px 0 0;font-size:13px;line-height:1.45;color:var(--muted);max-width:56ch}
#mg_kviz .mgk__soglasie a{color:inherit;text-decoration:underline;text-underline-offset:2px}


/* успех: поверх формы, высота блока та же */
#mg_kviz .mgk__ok{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;gap:16px;animation:mgk-ok .34s var(--ease)}
#mg_kviz .mgk__ok[hidden]{display:none}
#mg_kviz.mgk--gotovo .mgk__shagi{visibility:hidden}
#mg_kviz .mgk__galka{width:52px;height:52px}
#mg_kviz .mgk__galka circle{fill:var(--ak)}
#mg_kviz .mgk__galka path{stroke:var(--ink);stroke-dasharray:30;stroke-dashoffset:30;animation:mgk-galka .36s var(--ease) .12s forwards}
#mg_kviz .mgk__ok-tekst{font:700 21px/1.35 'Ubuntu',Arial,sans-serif;max-width:26ch;text-wrap:balance}
@keyframes mgk-ok{from{opacity:0;transform:translateY(8px) scale(.98)}}
@keyframes mgk-galka{to{stroke-dashoffset:0}}

@media (max-width:767px){
  #mg_kviz .mgk__zag{font-size:27px}
  #mg_kviz .mgk__pod{font-size:16px;margin-top:10px}
  #mg_kviz .mgk__vopros{font-size:19px}
  #mg_kviz .mgk__vvod input{font-size:18px}
  #mg_kviz .mgk__knopka{display:flex;width:100%}
  #mg_kviz .mgk__ok-tekst{font-size:19px}
}
@media (prefers-reduced-motion:reduce){
  #mg_kviz .mgk__shag{transform:none!important}
  #mg_kviz .mgk__knopka:active{transform:none}
  #mg_kviz .mgk__ok,#mg_kviz .mgk__osh:not(:empty){animation:none}
  #mg_kviz .mgk__galka path{animation:none;stroke-dashoffset:0}
  #mg_kviz .mgk__knopka[aria-busy="true"] .mgk__krug{animation-duration:2s}
  #mg_kviz .mgk__seg i::after,#mg_kviz .mgk__strelka,#mg_kviz .mgk__nazad svg{transition:none}
}
/* ---- вариант A «Витрина»: фото объекта на весь блок, заголовок на фото, белая карточка формы ---- */
#mg_kviz.mgk--A .mgk__box{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,470px);gap:48px;align-items:end;min-height:470px;
  padding:48px;border-radius:24px;overflow:hidden;isolation:isolate;
  background:radial-gradient(120% 100% at 85% 0%,#3d5c1f 0%,#1f3310 62%)}
#mg_kviz.mgk--A .mgk__tekst{max-width:580px;padding-bottom:4px;color:#fff}
#mg_kviz.mgk--A .mgk__zag{font-size:46px;color:#fff}
#mg_kviz.mgk--A .mgk__pod{color:rgba(255,255,255,.88);max-width:44ch}
/* правки владельца 23.09: заголовок меньше и строго в одну строку на десктопе; подзаголовок крупнее и шире —
   до ширины поля ввода (поле = карточка формы 470 − поля 2×28 = 414 px; на 768–1100 — 420 − 2×28 = 364 px);
   «освобождающимся» — жирным и цветом сайта */
#mg_kviz .mgk__akcent{font-weight:700;color:#90bb59}
#mg_kviz.mgk--A .mgk__forma{align-self:center;padding:26px 28px 28px;border-radius:18px;background:#fff;
  box-shadow:0 32px 64px -28px rgba(8,20,2,.7),0 2px 8px rgba(8,20,2,.16)}
#mg_kviz.mgk--A .mgk__knopka{display:flex;width:100%}
#mg_kviz.mgk--A .mgk__ok{padding:26px 28px}
@media (max-width:1100px) and (min-width:768px){
  #mg_kviz.mgk--A .mgk__box{grid-template-columns:minmax(0,1fr) minmax(0,420px);gap:32px;padding:36px}
  #mg_kviz.mgk--A .mgk__zag{font-size:38px}
}
/* правки владельца 23.09 — после блока 768–1100, чтобы перекрыть его */
@media (min-width:768px){ #mg_kviz.mgk--A .mgk__pod{font-size:20px;max-width:414px} }
@media (max-width:1100px) and (min-width:768px){ #mg_kviz.mgk--A .mgk__pod{max-width:364px} }
@media (min-width:1101px){ #mg_kviz.mgk--A .mgk__zag{font-size:40px;white-space:nowrap} }
@media (max-width:1100px) and (min-width:1024px){ #mg_kviz.mgk--A .mgk__zag{font-size:3vw;white-space:nowrap} }
@media (max-width:767px){
  #mg_kviz.mgk--A .mgk__box{display:block;min-height:0;padding:0 0 10px;border-radius:20px}
  #mg_kviz.mgk--A .mgk__tekst{position:relative;display:flex;flex-direction:column;justify-content:flex-end;min-height:310px;padding:24px 18px 22px}
  #mg_kviz.mgk--A .mgk__box:not(.mgk__box--foto) .mgk__tekst{min-height:0;padding-top:28px}
  #mg_kviz.mgk--A .mgk__zag{font-size:28px}
  #mg_kviz.mgk--A .mgk__pod{font-size:17px}
  #mg_kviz.mgk--A .mgk__forma{margin:0 10px;padding:20px 16px 22px;border-radius:16px}
  #mg_kviz.mgk--A .mgk__ok{padding:20px 16px}
}

/* ==== ГЕО-СТРАНИЦА (макет 27.09): квиз в ленте выдачи, между 5-м и 6-м зданием; после «Показать ещё» — над новой пачкой ==== */
/* место в ленте: те же поля, что между плитками зданий; правило 90 px карточки (фото #m_object) здесь не нужно */
#mg_kviz.mgk--geo{padding:0;margin:0 0 var(--mgk-zazor,24px);scroll-margin-top:16px}
@media (min-width:1025px){ #mg_kviz.mgk--geo{padding-bottom:0} }
/* подложка — тёмно-зелёная заливка образца; поверх неё фото одного из зданий выдачи (правка владельца 27.09),
   пока фото не загрузилось — та же заливка */
#mg_kviz.mgk--geo .mgk__box{min-height:0;align-items:center;gap:56px;padding:44px 48px;
  background:radial-gradient(90% 140% at 100% 0%,#3d5c1f 0%,#26401a 48%,#1f3310 100%)}
#mg_kviz.mgk--geo .mgk__tekst{max-width:none;padding-bottom:0}
#mg_kviz.mgk--geo .mgk__pod{max-width:58ch;font-size:18px;line-height:1.55;color:rgba(255,255,255,.9)}
@media (min-width:768px){ #mg_kviz.mgk--geo .mgk__pod{font-size:18px;max-width:58ch} }
@media (max-width:1100px) and (min-width:768px){ #mg_kviz.mgk--geo .mgk__pod{max-width:none} }
#mg_kviz.mgk--geo .mgk__zag{margin-bottom:0}
#mg_kviz.mgk--geo .mgk__akcent{color:#b5d98a}
#mg_kviz.mgk--geo .mgk__forma{align-self:center}
/* бюджет — отдельная строка под «от/до», необязательный */
#mg_kviz .mgk__pole--byudzhet{margin-top:16px}
#mg_kviz .mgk__pole--imya{margin-top:14px}
#mg_kviz .mgk__neob{font-weight:400;color:#6b7462}
#mg_kviz .mgk__vvod--rub input{padding-right:112px}
/* с клавиатурой телефона: при фокусе браузер докручивает поле так, чтобы под ним осталось место для кнопки */
#mg_kviz .mgk__vvod input{scroll-margin:24px 0 132px}
#mg_kviz .mgk__shag[data-shag="2"] .mgk__pole .mgk__metka{margin-top:0}
@media (max-width:767px){
  #mg_kviz.mgk--geo{margin-bottom:var(--mgk-zazor-m,16px)}
  #mg_kviz.mgk--geo .mgk__box{padding:0 0 10px;border-radius:20px}
  #mg_kviz.mgk--geo .mgk__tekst{min-height:0;padding:26px 18px 20px}
  #mg_kviz.mgk--geo .mgk__zag{font-size:28px;white-space:normal}
  #mg_kviz.mgk--geo .mgk__pod{font-size:16px;line-height:1.5}
  #mg_kviz .mgk__vvod--rub input{padding-right:100px}
  #mg_kviz .mgk__ed{font-size:15px}
}
/* согласие — под обоими шагами (у шага 1 под «Далее» было пусто: высоту ячейки задаёт шаг 2); на «спасибо» прячется вместе с шагами */
#mg_kviz.mgk--gotovo .mgk__soglasie{visibility:hidden}

/* ==== ФОТО ПОДЛОЖКИ (правка владельца 27.09): превью одного из зданий выдачи, не соседнего с квизом ====
   Превью 512 px растянуто на ~1276 — лёгкое размытие прячет «лесенку»; вуаль — цвет подложки, плотнее под текстом:
   белый и светло-зелёный текст ≥4,5:1 к самому светлому пикселю под ним (замер по кадру — kontrast.py). */
#mg_kviz .mgk__fon{position:absolute;inset:0;z-index:-1;overflow:hidden;border-radius:inherit;pointer-events:none}
#mg_kviz .mgk__fon-img{position:absolute;inset:-12px;background:50% 45%/cover no-repeat;filter:blur(2px) saturate(.85);
  opacity:0;transition:opacity .6s var(--ease)}
#mg_kviz .mgk__fon--est .mgk__fon-img{opacity:1}
#mg_kviz .mgk__fon::after{content:"";position:absolute;inset:0;
  background:linear-gradient(90deg,rgba(20,33,11,.86) 0%,rgba(20,33,11,.8) 42%,rgba(20,33,11,.52) 64%,rgba(20,33,11,.36) 100%),
             linear-gradient(0deg,rgba(20,33,11,.3) 0%,rgba(20,33,11,0) 45%)}
@media (max-width:767px){
  /* телефон: фото — под текстом, к форме уходит в сплошную заливку */
  #mg_kviz .mgk__fon-img{inset:-8px -8px auto;height:600px;filter:blur(1px) saturate(.85);background-position:50% 40%}
  #mg_kviz .mgk__fon::after{background:linear-gradient(180deg,rgba(20,33,11,.62) 0,rgba(20,33,11,.72) 150px,rgba(20,33,11,.8) 300px,rgba(20,33,11,.93) 440px,#14210b 560px)}
}
@media (prefers-reduced-motion:reduce){ #mg_kviz .mgk__fon-img{transition:none} }
