/* Quiz4: native consultation popup only; no global resets or scroll locks. */
.popup--kviz4 { padding:20px; }
.popup--kviz4 .lpc { --lpc-accent:var(--c-accent,#3592db); --lpc-ink:var(--c-text,#20232a); --lpc-muted:#626974; --lpc-soft:#f3f3ef; --lpc-line:#dadbd6; position:relative; display:flex; flex-direction:column; width:min(760px,100%); height:min(740px,calc(100dvh - 40px)); max-height:calc(100dvh - 40px); padding:0; border-radius:20px; overflow:hidden; color:var(--lpc-ink); background:#fff; box-shadow:0 18px 60px #0003; font-size:15px; line-height:1.4; }
.popup--kviz4 [hidden] { display:none!important; }
.lpc *, .lpc *::before, .lpc *::after { box-sizing:border-box; }
.lpc button,.lpc input { font:inherit; }
.lpc button { cursor:pointer; }
.lpc button:disabled { cursor:default; }
.lpc :focus-visible { outline:3px solid var(--lpc-accent); outline-offset:3px; }
.lpc-head { flex:none; padding:12px 18px; border-bottom:1px solid var(--lpc-line); background:#fff; }
.lpc-who { display:flex; align-items:center; gap:12px; }
.lpc-who .nm { display:flex; flex-direction:column; min-width:0; flex:1; }
.lpc-who b { font-size:17px; line-height:1.25; }
.lpc-who small { font-size:12px; color:var(--lpc-muted); }
.lpc-who .st { color:#267244; font-weight:600; }
.lpc.off .lpc-who .st { color:var(--lpc-muted); }
.lpc-av { position:relative; flex:none; width:36px; height:36px; display:inline-block; color:var(--lpc-accent); }
.lpc-av svg { width:100%; height:100%; border-radius:50%; display:block; }
.lpc-av.big { width:44px; height:44px; }
.lpc-av .dot { position:absolute; right:0; bottom:0; width:12px; height:12px; border-radius:50%; background:#368c55; border:2px solid #fff; }
.lpc.off .lpc-av .dot { background:#9c9e9b; }
.lpc-nojs-close { display:flex; align-items:center; justify-content:flex-end; min-height:44px; padding:8px 18px; color:var(--lpc-ink); }
.lpc .lpq-x { width:40px; height:40px; border-radius:50%; border:1px solid var(--lpc-line); background:white; font-size:26px; line-height:1; flex:none; color:var(--lpc-ink); }
.lpc-title { font-size:13px; font-weight:500; color:var(--lpc-muted); margin:7px 0 0; }
.lpc-pg { margin-top:9px; background:var(--lpc-soft); border-radius:13px; padding:10px 12px; }
.lpc-pg .tr { height:6px; background:#dedfd8; border-radius:9px; overflow:hidden; }
.lpc-pg .tr i { display:block; height:100%; border-radius:9px; background:repeating-linear-gradient(-45deg,var(--lpc-accent) 0 10px,#80bde9 10px 20px); background-size:28px 28px; animation:lpcBar 1.2s linear infinite; transition:width .4s; }
@keyframes lpcBar { to { background-position:28px 0; } }
.lpc-pg .t { font-size:12px; margin-top:6px; line-height:1.3; }
.lpc-gifts { display:grid; grid-template-columns:1fr 1fr; gap:6px; margin-top:8px; }
.lpc-gifts .h { grid-column:1/-1; display:flex; justify-content:space-between; align-items:center; font-size:10px; letter-spacing:.07em; text-transform:uppercase; color:var(--lpc-muted); font-weight:700; }
.lpc-gifts .h b { background:#fff; border-radius:99px; padding:1px 8px; font-size:11px; letter-spacing:0; color:var(--lpc-ink); text-transform:none; }
.lpc-gifts .g { display:flex; gap:8px; align-items:center; background:#fff; border-radius:9px; padding:6px 9px; font-size:12px; font-weight:700; color:var(--lpc-muted); border:1px solid transparent; }
.lpc-gifts .g>span:first-child { font-size:23px; line-height:1; }
.lpc-gifts .g small { display:block; font-weight:400; font-size:11px; margin-top:1px; }
.lpc-gifts .g.on { color:var(--lpc-ink); border-color:var(--lpc-accent); }
.lpc-log { position:relative; flex:1 1 0; min-height:0; overflow-y:auto; overscroll-behavior:contain; padding:16px 18px 22px; display:flex; flex-direction:column; gap:10px; background:#fff; scroll-behavior:auto; }
.lpc-log>* { flex-shrink:0; }
.lpc-row { display:flex; gap:10px; align-items:flex-end; animation:lpcIn .2s ease-out; }
.lpc-row.b { padding-left:46px; }
.lpc-row.b.q { padding-left:0; }
.lpc-bb { background:var(--lpc-soft); border-radius:17px; padding:10px 14px; font-size:14px; line-height:1.45; max-width:min(540px,100%); overflow-wrap:anywhere; }
.lpc-row.q .lpc-bb { font-weight:700; font-size:16px; line-height:1.3; }
.lpc-bb.typing { display:inline-flex; gap:5px; padding:14px 16px; }
.lpc-bb.typing i { width:7px; height:7px; border-radius:50%; background:#8a908b; animation:lpcDot 1s infinite; }
.lpc-bb.typing i:nth-child(2) { animation-delay:.15s; }
.lpc-bb.typing i:nth-child(3) { animation-delay:.3s; }
@keyframes lpcDot { 0%,60%,100% { opacity:.4; transform:none; } 30% { opacity:1; transform:translateY(-3px); } }
@keyframes lpcIn { from { opacity:0; transform:translateY(5px); } to { opacity:1; transform:none; } }
.lpc-row.u { justify-content:flex-end; align-items:center; margin:3px 0 6px; }
.lpc-ub { position:relative; background:var(--lpc-ink); color:white; border-radius:16px; padding:10px 14px; font-size:14px; font-weight:600; display:flex; align-items:center; gap:8px; max-width:80%; overflow-wrap:anywhere; }
.lpc-ub .ck { font-size:11px; letter-spacing:-2px; color:#cfd4d8; }
.lpc-ub .re { position:absolute; left:-8px; bottom:-12px; width:25px; height:25px; border-radius:50%; background:#fff; box-shadow:0 2px 8px #0002; display:flex; align-items:center; justify-content:center; font-size:14px; }
.lpc-you { flex:none; width:34px; height:34px; border-radius:50%; background:#eee; font-size:11px; font-weight:700; display:flex; align-items:center; justify-content:center; }
.lpc-opts { display:grid; grid-template-columns:1fr 1fr; gap:8px; padding-left:46px; }
.lpc-btn { display:flex; align-items:center; gap:10px; text-align:left; min-height:58px; padding:8px 12px; border:1.5px solid #c9ccc6; border-radius:13px; background:white; color:var(--lpc-ink); min-width:0; }
.lpc-btn:hover { border-color:var(--lpc-accent); background:#fafaf6; }
.lpc-btn .rd { flex:none; width:21px; height:21px; border-radius:50%; border:2px solid #a6aaa2; }
.lpc-btn .tx { display:flex; flex-direction:column; gap:2px; min-width:0; overflow-wrap:anywhere; }
.lpc-btn b { font-weight:700; font-size:14px; }
.lpc-btn small { font-size:12px; color:var(--lpc-muted); line-height:1.3; }
.lpc-price-note { margin:0 0 0 46px; color:var(--lpc-muted); font-size:12px; }
.lpc-btn small.pr { color:var(--lpc-accent); font-weight:700; white-space:nowrap; overflow-wrap:normal; word-break:normal; }
.lpc-opts.ph .lpc-btn { padding:6px; }
.lpc-opts.ph .th { flex:none; width:76px; height:58px; border-radius:8px; overflow:hidden; background:#eee; }
.lpc-opts.ph .th img { width:100%; height:100%; object-fit:cover; display:block; }
.lpc .lpc-form { display:block; margin:4px 0 0 46px; border:1.5px solid var(--lpc-line); border-radius:16px; padding:14px; background:#fff; }
.lpc-ft { display:flex; flex-direction:column; gap:3px; margin-bottom:10px; padding:10px 12px; border-radius:11px; background:var(--lpc-soft); overflow-wrap:anywhere; }
.lpc-ft b { font-size:14px; }
.lpc-ft small { font-size:12px; color:var(--lpc-muted); }
.lpc-fieldset { border:0; padding:0; margin:0 0 12px; min-width:0; }
.lpc-fieldset legend { margin-bottom:6px; padding:0; font-size:12px; color:var(--lpc-muted); }
.lpc-chips { display:flex; flex-wrap:wrap; gap:6px; }
.lpc-chip { border:1px solid var(--lpc-line); border-radius:8px; background:white; color:var(--lpc-ink); padding:9px 11px; min-height:36px; font-size:12px!important; }
.lpc-chip.on { background:var(--lpc-ink); color:white; border-color:var(--lpc-ink); }
.lpc-fields { display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.lpc .fld { display:block; margin-bottom:12px; font-size:12px; min-width:0; }
.lpc .fld small { color:var(--lpc-muted); font-size:10px; }
.lpc .fld input { width:100%; min-width:0; margin-top:5px; border:1px solid #b9beb6; border-radius:9px; padding:10px; background:white; color:var(--lpc-ink); font-size:16px; }
.lpc .consent { display:flex; align-items:flex-start; gap:9px; margin:12px 0; font-size:11px; line-height:1.45; color:var(--lpc-muted); }
.lpc .consent input { flex:none; width:18px; height:18px; margin:0; accent-color:var(--lpc-accent); }
.lpc .consent a { color:inherit; text-decoration:underline; }
.lpc .lpc-hp { position:absolute!important; left:-9999px; width:1px; height:1px; opacity:0; }
.lpc .lead-form__error { font-size:13px; color:#9b2020; margin:8px 0; }
.lpc-submit { width:100%; padding:13px 16px; border:0; border-radius:10px; background:var(--lpc-accent); color:#fff; font-weight:700!important; }
.lpc-submit:disabled { background:#d3d5d0; color:#555c50; }
.lpc .alt, .lpc-demo { margin:10px 0 0; font-size:11px; color:var(--lpc-muted); }
.lpc .alt span { white-space:nowrap; }
.lpc-demo { padding:9px; border-radius:8px; background:#fff4da; color:#72531f; }
.lpc-again { margin-top:8px; background:none; border:0; padding:8px 0; color:var(--lpc-muted); font-size:12px!important; text-decoration:underline; }
@media(max-width:899px) {
  .popup--kviz4 { padding:0; }
  .popup--kviz4 .lpc { width:100%; height:100dvh; max-height:100dvh; border-radius:0; }
  .lpc .lpc-head { padding-top:max(12px,env(safe-area-inset-top)); }
  .popup--kviz4 .lpc-gifts { display:none; }
  .lpc-log { -webkit-overflow-scrolling:touch; padding-bottom:calc(24px + env(safe-area-inset-bottom,0px)); }
}
@media(max-width:560px) {
  .lpc-head { padding:10px 12px; }
  .lpc-log { padding-left:12px; padding-right:12px; }
  .lpc-opts { padding-left:0; grid-template-columns:1fr; }
  .lpc-row.b { padding-left:0; }
  .lpc-row.b:not(.q) .lpc-bb { margin-left:46px; }
  .lpc .lpc-form { margin-left:0; padding:12px; }
  .lpc-fields { grid-template-columns:1fr; gap:0; }
  .lpc-who b { font-size:16px; }
  .lpc-pg .t { font-size:11px; }
}
@media(prefers-reduced-motion:reduce) { .lpc .tr i,.lpc-row,.lpc .typing i { animation:none; transition:none; } }
