/* МЕДВЕДО · внешний пользовательский контур: подписание, результат, проверка, auth. */
.mv-user-body,
.mv-public-body,
.mv-admin-body{
--bg-warm:var(--mv-cream);
  --bg-soft:var(--mv-paper);
  --surface:var(--mv-card);
  --line-soft:var(--mv-line);
  --line-strong:var(--mv-line2);
  --text-main:var(--mv-ink);
  --text-muted:var(--mv-muted);
  --accent:var(--mv-honey);
  --accent-dark:var(--mv-honey-d);
  --success:var(--mv-forest-mid);
  --danger:var(--mv-danger);
  --warning:var(--mv-honey);
  --gold:var(--mv-honey);
  --gold2:var(--mv-honey-d);
  --v2-bg:var(--mv-cream);
  --v2-bg-warm:var(--mv-bg);
  --v2-card:var(--mv-card);
  --v2-border:var(--mv-line);
  --v2-border-strong:var(--mv-line2);
  --v2-text:var(--mv-ink);
  --v2-muted:var(--mv-muted);
  --v2-forest:var(--mv-forest);
  --v2-gold:var(--mv-honey);
  --v2-gold-dark:var(--mv-honey-d);
  --v2-danger:var(--mv-danger);
  --v2-success:var(--mv-forest-mid);
  color:var(--mv-ink);
  font-family:var(--mv-sans);
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}

.mv-user-body *,
.mv-public-body *,
.mv-admin-body *{
font-family:var(--mv-sans)
}

.mv-user-body,
.mv-public-body{
background:radial-gradient(60% 45% at 92% -8%, rgba(201,123,46,.10) 0%, rgba(201,123,46,0) 55%),
    radial-gradient(52% 42% at -8% 10%, rgba(27,67,50,.065) 0%, rgba(27,67,50,0) 52%),
    var(--mv-cream);
}

.mv-user-body .px-btn,
.mv-public-body .px-btn,
.mv-admin-body .btn,
.mv-admin-body .px-btn{
display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-height:38px;
  padding:var(--sp-2) var(--sp-3);
  border:1px solid var(--mv-line2);
  border-radius:var(--r-md);
  background:rgba(255,255,255,.76);
  color:var(--mv-forest);
  text-decoration:none;
  font-weight:680;
  font-size:var(--fs-xs);
  line-height:1.4;
  cursor:pointer;
  transition:transform .2s var(--mv-ease), box-shadow .2s var(--mv-ease), background .16s, border-color .16s, color .16s;
}

.mv-user-body .px-btn:hover,
.mv-public-body .px-btn:hover,
.mv-admin-body .btn:hover,
.mv-admin-body .px-btn:hover{
transform:translateY(-1px);
  border-color:var(--mv-honey);
  box-shadow:0 10px 24px -16px rgba(27,67,50,.32);
}

.mv-user-body .px-btn-primary,
.mv-public-body .px-btn-primary,
.mv-admin-body .btn-primary,
.mv-admin-body .px-btn-primary{
background:var(--mv-forest);
  border-color:var(--mv-forest);
  color:#FBF7F0;
  box-shadow:0 10px 22px -14px rgba(16,42,31,.62);
}

.mv-user-body .px-btn-primary:hover,
.mv-public-body .px-btn-primary:hover,
.mv-admin-body .btn-primary:hover,
.mv-admin-body .px-btn-primary:hover{
background:var(--mv-forest-deep);color:#fff
}

.mv-user-body .px-btn-secondary,
.mv-public-body .px-btn-secondary,
.mv-user-body .px-btn-light,
.mv-public-body .px-btn-light,
.mv-admin-body .btn:not(.btn-primary){
background:#fff;color:var(--mv-forest)
}

.mv-user-body .px-btn-danger,
.mv-public-body .px-btn-danger,
.mv-admin-body .btn-danger{
background:var(--mv-danger-bg);
  border-color:var(--mv-danger-line);
  color:#B83B2A;
  box-shadow:none;
}

.mv-user-body .px-btn-danger:hover,
.mv-public-body .px-btn-danger:hover,
.mv-admin-body .btn-danger:hover{
background:#FFE8E2;border-color:#FFC3B8
}

.mv-user-body .px-btn-primary img.px-icon,
.mv-public-body .px-btn-primary img.px-icon,
.mv-admin-body .btn-primary img.px-icon,
.mv-admin-body .px-btn-primary img.px-icon,
.mv-user-body .px-btn-primary img.ak-icon,
.mv-public-body .px-btn-primary img.ak-icon{
filter:brightness(0) invert(1);opacity:.94
}

.mv-user-body .px-btn-danger img.px-icon,
.mv-public-body .px-btn-danger img.px-icon{
filter:invert(34%) sepia(33%) saturate(1283%) hue-rotate(324deg) brightness(88%) contrast(88%)
}

.mv-user-body .px-icon,
.mv-public-body .px-icon,
.mv-admin-body .px-icon{
width:18px;height:18px;flex:0 0 18px;vertical-align:-3px
}

.mv-user-body input,
.mv-user-body textarea,
.mv-user-body select,
.mv-public-body input,
.mv-public-body textarea,
.mv-public-body select,
.mv-admin-body input,
.mv-admin-body textarea,
.mv-admin-body select{
border:1.5px solid var(--mv-line2);
  border-radius:var(--r-md);
  background:#fff;
  color:var(--mv-ink);
}

.mv-user-body input:focus,
.mv-user-body textarea:focus,
.mv-user-body select:focus,
.mv-public-body input:focus,
.mv-public-body textarea:focus,
.mv-public-body select:focus,
.mv-admin-body input:focus,
.mv-admin-body textarea:focus,
.mv-admin-body select:focus{
outline:none;
  border-color:var(--mv-forest);
  box-shadow:0 0 0 3px rgba(27,67,50,.10);
}

.mv-user-body ::placeholder,
.mv-public-body ::placeholder,
.mv-admin-body ::placeholder{
color:var(--mv-faint);opacity:1
}

.mv-user-body .px-alert,
.mv-public-body .px-alert,
.mv-admin-body .px-admin-alert{
border-radius:var(--r-md);
  border-color:rgba(182,90,80,.25);
  background:rgba(182,90,80,.075);
  color:var(--mv-danger);
  font-weight:680;
}

.mv-user-body .px-alert.success,
.mv-user-body .px-alert-success,
.mv-public-body .px-alert.success,
.mv-public-body .px-alert-success,
.mv-admin-body .px-admin-alert.is-success{
border-color:rgba(27,67,50,.20);
  background:var(--mv-pale);
  color:var(--mv-forest-mid);
}

.mv-user-body .px-caption,
.mv-admin-body .px-caption,
.mv-public-body .px-kicker,
.mv-public-body .public-kicker{
display:inline-flex;
  width:max-content;
  max-width:100%;
  color:var(--mv-honey-d);
  background:var(--mv-honey-p);
  border:1px solid rgba(201,123,46,.16);
  border-radius:var(--r-pill);
  padding:var(--sp-1) var(--sp-2);
  font-size:var(--fs-xs);
  line-height:1.4;
  font-weight:780;
  letter-spacing:.075em;
  text-transform:uppercase;
}

.mv-public-body .mv-public-top{
position:sticky;top:0;z-index:40;
  display:flex;align-items:center;justify-content:space-between;gap:14px;
  padding:11px max(16px,calc((100% - 980px)/2));
  border-bottom:1px solid var(--mv-line);
  background:rgba(250,247,242,.90);
  backdrop-filter:saturate(1.35) blur(14px);
  -webkit-backdrop-filter:saturate(1.35) blur(14px);
}

.mv-public-body .mv-public-brand{
display:inline-flex;align-items:center;gap:10px;text-decoration:none;color:var(--mv-forest);font-weight:760;min-width:0
}

.mv-public-body .mv-public-brand img{
height:38px;width:auto;display:block
}

.mv-public-body .mv-public-brand span{
font-size:var(--fs-xs);color:var(--mv-muted);font-weight:650;white-space:nowrap
}

.mv-public-body .mv-public-nav{
display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end
}

.mv-public-body .mv-public-nav a{
display:inline-flex;align-items:center;gap:7px;min-height:34px;
  padding:var(--sp-2) var(--sp-3);border-radius:var(--r-pill);
  border:1px solid var(--mv-line);background:rgba(255,255,255,.62);
  color:var(--mv-muted);text-decoration:none;font-size:var(--fs-xs);font-weight:700;
}

.mv-public-body .mv-public-nav a:hover{
color:var(--mv-forest);border-color:var(--mv-line2);background:#fff
}

.mv-public-body .px-public-main-v2{
max-width:820px;margin:0 auto;padding:var(--sp-5) var(--sp-4) var(--sp-7)}

.mv-public-body .px-public-card,
.mv-public-body .verifyx-final-hero,
.mv-public-body .verifyx-method-card,
.mv-public-body .verifyx-result-card,
.mv-public-body .verifyx-panel,
.mv-public-body .verifyx-trust-block,
.mv-public-body .verifyx-about,
.mv-public-body .psg-card,
.mv-public-body .card{
background:rgba(255,255,255,.90);
  border:1px solid var(--mv-line);
  border-radius:var(--r-lg);
  box-shadow:var(--mv-sh);
}

.mv-public-body .px-public-card{
max-width:720px;margin:0 auto;padding:var(--sp-5)}

.mv-public-body .px-sign-card{
display:grid;gap:14px
}

.mv-public-body .px-public-card h1,
.mv-public-body .verifyx-final-hero h1,
.mv-public-body .verifyx-result-content h2,
.mv-public-body .psg-card h1{
color:var(--mv-forest);
  font-size:clamp(1.55rem,3vw,2.05rem);
  line-height:1.4;
  letter-spacing:-.03em;
  font-weight:740;
  margin:2px 0 6px;
}

.mv-public-body .px-public-card p,
.mv-public-body .verifyx-final-hero p,
.mv-public-body .verifyx-method-card p,
.mv-public-body .verifyx-result-content p,
.mv-public-body .verifyx-about p,
.mv-public-body .psg-card span{
color:var(--mv-muted);line-height:1.55
}

.mv-public-body .px-public-doc-code,
.mv-public-body .px-public-progress-note{
display:inline-flex;align-items:center;gap:8px;max-width:100%;width:max-content;
  padding:var(--sp-2) var(--sp-3);border-radius:var(--r-pill);
  background:var(--mv-honey-p);border:1px solid rgba(201,123,46,.18);color:var(--mv-honey-d);font-size:var(--fs-xs);
}

.mv-public-body .px-public-sender{
background:#FFFDFC;border:1px solid var(--mv-line);border-radius:var(--r-lg);padding:var(--sp-3);
}

.mv-public-body .px-public-sender>span{
background:var(--mv-pale);border-color:var(--mv-pale2);color:var(--mv-forest)
}

.mv-public-body .px-progress span{
height:7px;border-radius:var(--r-pill);background:var(--mv-line);overflow:hidden
}

.mv-public-body .px-progress i{
background:linear-gradient(90deg,var(--mv-honey),var(--mv-forest-mid));border-radius:inherit
}

.mv-public-body .px-public-sign-form{
border-top:0;
  margin-top:0;
  padding:var(--sp-4);
  background:#FFFDFC;
  border:1px solid var(--mv-line);
  border-radius:var(--r-lg);
}

.mv-public-body .px-public-sign-form h2{
margin:0 0 4px;color:var(--mv-ink);font-size:var(--fs-lg);letter-spacing:-.015em
}

.mv-public-body .px-legal-consent-box{
background:#fff;border-color:var(--mv-line);border-radius:var(--r-lg);box-shadow:none
}

.mv-public-body .px-legal-check input{
accent-color:var(--mv-forest) !important
}

.mv-public-body .px-public-decline{
padding:var(--sp-3);
  border:1px solid rgba(182,90,80,.18);
  border-radius:var(--r-lg);
  background:rgba(182,90,80,.035);
}

.mv-public-body .px-public-decline summary{
color:var(--mv-danger);font-weight:760
}

.mv-public-body .px-public-facts{
gap:8px
}

.mv-public-body .px-public-facts div,
.mv-public-body .verifyx-summary-grid div,
.mv-public-body .verifyx-trust-grid>div,
.mv-public-body .verifyx-party-final{
background:#FFFDFC;border:1px solid var(--mv-line);border-radius:var(--r-md);
}

.mv-public-body .px-result-icon,
.mv-public-body .verifyx-result-mark,
.mv-public-body .verifyx-method-icon,
.mv-public-body .psg-mark{
display:grid;place-items:center;border-radius:var(--r-lg);background:var(--mv-pale);border:1px solid var(--mv-pale2);color:var(--mv-forest-mid);
}

.mv-public-body .verifyx-shell{
gap:14px
}

.mv-public-body .verifyx-methods{
grid-template-columns:1fr 1fr;gap:14px
}

.mv-public-body .verifyx-final-hero{
padding:var(--sp-5);overflow:hidden
}

.mv-public-body .verifyx-final-hero::after{
background:rgba(201,123,46,.10)
}

.mv-public-body .verifyx-upload-final{
background:#FFFDFC;border-color:var(--mv-line2);border-radius:var(--r-lg)
}

.mv-public-body .verifyx-upload-final.has-file{
border-color:rgba(27,67,50,.28);background:var(--mv-pale)
}

.mv-public-body .verifyx-details-grid{
gap:14px
}

.mv-public-body .verifyx-panel{
padding:var(--sp-4)}

.mv-public-body .verifyx-panel h3{
color:var(--mv-forest);font-size:var(--fs-base);letter-spacing:-.01em
}

.mv-public-body .verifyx-timeline-final span{
background:var(--mv-line2)
}

.mv-public-body .verifyx-timeline-final .done span{
background:var(--mv-forest-mid)
}

.mv-public-body .psg-page{
min-height:auto;display:grid;place-items:center;padding:18px 0
}

.mv-public-body .psg-card{
max-width:560px;width:100%;padding:var(--sp-6);text-align:center;display:grid;gap:8px
}

.mv-public-body .psg-result.reject .psg-mark{
margin:0 auto;width:56px;height:56px;background:var(--mv-danger-bg);border-color:var(--mv-danger-line);color:var(--mv-danger);font-size:var(--fs-3xl);font-weight:560
}

.mv-public-body .psg-card p{
margin:0 auto;color:var(--mv-honey-d);background:var(--mv-honey-p);border-radius:var(--r-pill);padding:var(--sp-1) var(--sp-2);font-size:var(--fs-xs);font-weight:780;text-transform:uppercase;letter-spacing:.075em
}

.mv-public-body .mv-public-footer{
max-width:820px;margin:0 auto;padding:0 16px 22px;display:flex;justify-content:center;gap:8px;flex-wrap:wrap;color:var(--mv-muted);font-size:var(--fs-xs)}

.mv-public-body .mv-public-footer a,
.mv-public-body .mv-public-footer span{
padding:var(--sp-2) var(--sp-2);border:1px solid var(--mv-line);border-radius:var(--r-pill);background:rgba(255,255,255,.55);text-decoration:none;color:var(--mv-muted);font-weight:660
}

.mv-public-body .mv-public-footer a:hover{
color:var(--mv-forest);border-color:var(--mv-line2)
}

.mv-user-body .px-cookie-notice,
.mv-public-body .px-cookie-notice{
width:min(560px,calc(100vw - 24px)) !important;
  padding:var(--sp-3) var(--sp-3) !important;
  border-radius:var(--r-md) !important;
  border-color:var(--mv-line) !important;
  background:rgba(255,255,255,.96) !important;
  box-shadow:0 18px 48px -26px rgba(16,42,31,.36) !important;
}

.mv-user-body .px-cookie-actions a,
.mv-public-body .px-cookie-actions a{
color:var(--mv-honey-d) !important
}

.mv-user-body .px-cookie-notice b,
.mv-public-body .px-cookie-notice b{font-size:var(--fs-xs) !important;line-height:1.4 !important;margin-bottom:1px !important}
.mv-user-body .px-cookie-notice p,
.mv-public-body .px-cookie-notice p{font-size:var(--fs-xs) !important;line-height:1.4 !important}
.mv-user-body .px-cookie-actions .px-btn,
.mv-public-body .px-cookie-actions .px-btn{min-height:32px !important;padding:var(--sp-2) var(--sp-3) !important;border-radius:var(--r-sm) !important;font-size:var(--fs-xs) !important}


@media(max-width:1100px){
  .mv-user-body .px-dashboard-grid,
  .mv-user-body .px-profile-grid,
  .mv-public-body .verifyx-methods,
  .mv-public-body .verifyx-details-grid{
  grid-template-columns:1fr
  }
}

@media(max-width:900px){
  .mv-public-body .mv-public-top{
  position:relative;padding:var(--sp-3) var(--sp-3);align-items:flex-start
  }
  .mv-public-body .mv-public-brand img{
  height:34px
  }
}

@media(max-width:640px){
  .mv-user-body .px-card,
  .mv-user-body .px-panel,
  .mv-public-body .px-public-card{
  padding:var(--sp-4);border-radius:17px
  }
  .mv-public-body .px-public-main-v2{
  padding:var(--sp-4) var(--sp-3) var(--sp-6)}
  .mv-public-body .mv-public-top{
  display:grid;gap:8px
  }
  .mv-public-body .mv-public-brand span{
  display:none
  }
  .mv-public-body .mv-public-nav{
  justify-content:flex-start
  }
  .mv-public-body .px-public-actions .px-btn,
  .mv-public-body .px-result-actions .px-btn,
  .mv-public-body .verifyx-code-row .px-btn{
  width:100%;justify-content:center
  }
  .mv-public-body .verifyx-code-row{
  grid-template-columns:1fr
  }
  .mv-public-body .px-public-facts,
  .mv-public-body .verifyx-summary-grid,
  .mv-public-body .verifyx-trust-grid{
  grid-template-columns:1fr
  }
}

.mv-public-body .mv-legal-wrap{
max-width:760px;margin:0 auto;padding:8px 0 6px
}

.mv-public-body .mv-legal-card{
padding:var(--sp-6) var(--sp-7)}

.mv-public-body .mv-legal-card h1{
margin:4px 0 8px;color:var(--mv-forest);font-size:var(--fs-2xl);letter-spacing:-.02em
}

.mv-public-body .mv-legal-updated{
margin:0 0 22px;color:var(--mv-muted);font-size:var(--fs-xs)}

.mv-public-body .mv-legal-body{
font-size:var(--fs-sm);line-height:1.72;color:var(--mv-ink);white-space:normal;word-wrap:break-word
}

.mv-public-body .mv-legal-foot{
margin-top:var(--sp-6);padding-top:var(--sp-4);border-top:1px solid var(--mv-line);font-size:var(--fs-xs);color:var(--mv-muted)
}

.mv-user-body .px-caption,
.mv-admin-body .px-caption,
.mv-public-body .px-kicker,
.mv-public-body .public-kicker,
.mv-user-body .archive-kicker{
background:var(--mv-honey-p);
  color:var(--mv-honey-d);
  border-color:rgba(201,123,46,.22);
}

.mv-user-body .px-btn-secondary,
.mv-user-body .px-btn-light,
.mv-user-body .px-btn:not(.px-btn-primary):not(.px-btn-danger):not(.px-passport-btn),
.mv-public-body .px-btn:not(.px-btn-primary):not(.px-btn-danger),
.mv-admin-body .btn:not(.btn-primary):not(.btn-danger),
.mv-admin-body .px-btn:not(.px-btn-primary):not(.px-btn-danger){
background:linear-gradient(180deg,#FFFDFC 0%,var(--mv-honey-p) 100%);
  border-color:rgba(201,123,46,.34);
  color:var(--mv-honey-d);
  box-shadow:0 10px 22px -18px rgba(201,123,46,.38);
}

.mv-user-body .px-btn-secondary:hover,
.mv-user-body .px-btn-light:hover,
.mv-user-body .px-btn:not(.px-btn-primary):not(.px-btn-danger):not(.px-passport-btn):hover,
.mv-public-body .px-btn:not(.px-btn-primary):not(.px-btn-danger):hover,
.mv-admin-body .btn:not(.btn-primary):not(.btn-danger):hover,
.mv-admin-body .px-btn:not(.px-btn-primary):not(.px-btn-danger):hover{
background:var(--mv-honey-p);
  border-color:rgba(201,123,46,.58);
  color:var(--mv-honey-d);
  box-shadow:0 14px 28px -20px rgba(201,123,46,.48);
}

.mv-user-body .px-btn-secondary img.px-icon,
.mv-user-body .px-btn-light img.px-icon,
.mv-user-body .px-btn:not(.px-btn-primary):not(.px-btn-danger) img.px-icon,
.mv-public-body .px-btn:not(.px-btn-primary):not(.px-btn-danger) img.px-icon,
.mv-admin-body .btn:not(.btn-primary):not(.btn-danger) img.px-icon,
.mv-admin-body .px-btn:not(.px-btn-primary):not(.px-btn-danger) img.px-icon{
filter:none;
  opacity:.92;
}

.mv-user-body .px-hero-icon,
.mv-user-body .px-icon-card,
.mv-user-body .px-dashboard-task > span:first-child,
.mv-admin-body .px-admin-hero-icon,
.mv-admin-body .px-admin-link-policy-icon,
.mv-public-body .verifyx-method-icon,
.mv-public-body .px-result-icon,
.mv-public-body .psg-mark{
background:linear-gradient(180deg,#FFFDFC 0%,var(--mv-honey-p) 100%);
  border-color:rgba(201,123,46,.28);
  color:var(--mv-honey-d);
}

.mv-user-body .px-hero-icon img.px-icon,
.mv-user-body .px-icon-card img.px-icon,
.mv-admin-body .px-admin-hero-icon img.px-icon,
.mv-admin-body .px-admin-link-policy-icon img.px-icon,
.mv-public-body .verifyx-method-icon img.px-icon,
.mv-public-body .px-result-icon img.px-icon{
filter:none;
  opacity:.9;
}

.mv-user-body .px-card,
.mv-user-body .px-panel,
.mv-public-body .px-public-card,
.mv-admin-body .px-admin-card,
.mv-admin-body .px-admin-kpi{
position:relative;
}

.mv-user-body .px-card::before,
.mv-user-body .px-panel::before,
.mv-public-body .px-public-card::before,
.mv-admin-body .px-admin-card::before,
.mv-admin-body .px-admin-kpi::before{
content:"";
  position:absolute;
  left:16px;
  right:16px;
  top:0;
  height:2px;
  border-radius:0 0 var(--r-pill) var(--r-pill);
  background:linear-gradient(90deg,rgba(201,123,46,.80),rgba(201,123,46,.14),rgba(201,123,46,0));
  pointer-events:none;
}

.mv-user-body .px-card > *,
.mv-user-body .px-panel > *,
.mv-public-body .px-public-card > *,
.mv-admin-body .px-admin-card > *,
.mv-admin-body .px-admin-kpi > *{
position:relative;z-index:1
}

.mv-user-body .px-doc-status.attention,
.mv-user-body .px-mini-status:not(.success):not(.danger):not(.muted),
.mv-user-body .px-badge:not(.success):not(.danger):not(.muted),
.mv-public-body .px-public-doc-code,
.mv-public-body .px-public-progress-note{
background:var(--mv-honey-p);
  color:var(--mv-honey-d);
  border:1px solid rgba(201,123,46,.22);
}

@media(max-width:900px){
  .mv-user-body .px-card::before,
  .mv-user-body .px-panel::before,
  .mv-public-body .px-public-card::before,
  .mv-admin-body .px-admin-card::before{
  left:14px;right:14px
  }
}


/* hotfix v2: verification methods balance */
.mv-public-body .verifyx-method-card{padding:var(--sp-5)}
.mv-public-body .verifyx-method-top{display:grid;grid-template-columns:auto minmax(0,1fr);gap:14px;align-items:start}
.mv-public-body .verifyx-method-icon{width:50px;height:50px;min-width:50px;font-size:var(--fs-lg);font-weight:780;background:#FFFDFC;border:1px solid rgba(201,123,46,.32);color:var(--mv-honey-d)}
.mv-public-body .verifyx-code-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center}
.mv-public-body .verifyx-code-row input{min-height:54px;font-size:var(--fs-base)}
.mv-public-body .verifyx-code-row .px-btn{min-height:54px}
.mv-public-body .verifyx-method-card small{display:block;margin-top:var(--sp-1)}
@media(max-width:640px){
  .mv-public-body .verifyx-method-card{padding:var(--sp-4)}
  .mv-public-body .verifyx-method-top{gap:12px}
}


/* bigpatch v8: public signing helper note */
.mv-public-body .px-sign-safe-note{
  display:grid;
  gap:4px;
  padding:var(--sp-3) var(--sp-3);
  border:1px solid var(--mv-pale2);
  border-radius:var(--r-md);
  background:var(--mv-pale);
  color:var(--mv-forest);
  font-size:var(--fs-sm);
  line-height:1.4;
}
.mv-public-body .px-sign-safe-note b{
  font-weight:760;
}
.mv-public-body .px-sign-safe-note span{
  color:var(--mv-muted);
}

/* v13: verify SHA explanation */
.mv-public-body .verifyx-tech-note{margin:0 0 12px;font-size:var(--fs-xs);color:var(--mv-muted);line-height:1.55;padding:var(--sp-3) var(--sp-3);background:var(--mv-pale);border-radius:var(--r-md)}

/* v20: unified public header for sign/result/verify/legal */
.mv-public-body .mv-public-top{
  min-height:78px;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);
  align-items:center;
  gap:12px;
  padding:10px max(16px,calc((100% - 980px)/2));
}
.mv-public-body .mv-public-top.is-minimal{
  grid-template-columns:1fr auto 1fr;
}
.mv-public-body .mv-public-brand{
  justify-self:center;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:0;
}
.mv-public-body .mv-public-brand img{
  height:48px;
  width:auto;
  display:block;
}
.mv-public-body .mv-public-brand span{display:none}
.mv-public-body .mv-public-top-spacer{display:block;min-width:1px}
.mv-public-body .mv-public-nav{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.mv-public-body .mv-public-nav-left{justify-self:start}
.mv-public-body .mv-public-nav-right{justify-self:end}
.mv-public-body .mv-public-nav a{
  min-height:38px;
  padding:var(--sp-2) var(--sp-3);
  background:rgba(255,255,255,.72);
  border:1px solid var(--mv-line2);
  color:var(--mv-forest);
  box-shadow:0 10px 24px -22px rgba(36,67,57,.42);
}
.mv-public-page-action .px-public-main-v2{max-width:760px;padding-top:var(--sp-6)}
.mv-public-page-verify .px-public-main-v2{max-width:980px;padding-top:var(--sp-6)}
.mv-public-page-legal .px-public-main-v2{max-width:860px;padding-top:var(--sp-6)}
.mv-public-page-verify .verifyx-final-hero{padding:var(--sp-6) var(--sp-7)}
.mv-public-page-verify .verifyx-final-hero h1{font-size:clamp(1.8rem,3.5vw,2.55rem);max-width:760px}
.mv-public-page-verify .verifyx-final-hero p{max-width:690px}
.mv-public-page-verify .verifyx-method-card{padding:var(--sp-5);min-height:315px;align-content:start}
.mv-public-page-verify .verifyx-method-top{gap:14px}
.mv-public-page-legal .mv-legal-wrap{max-width:820px;padding:0}
.mv-public-page-legal .mv-legal-card{padding:var(--sp-8);border-radius:28px}
.mv-public-page-legal .mv-legal-card h1{font-size:clamp(1.7rem,3.2vw,2.25rem);line-height:1.2}
@media(max-width:760px){
  .mv-public-body .mv-public-top{
    position:relative;
    grid-template-columns:1fr;
    justify-items:center;
    min-height:auto;
    padding:var(--sp-3) var(--sp-3);
  }
  .mv-public-body .mv-public-nav-left{display:none}
  .mv-public-body .mv-public-nav-right{justify-self:center;justify-content:center}
  .mv-public-body .mv-public-brand{order:-1}
  .mv-public-body .mv-public-brand img{height:42px}
  .mv-public-page-action .mv-public-nav,
  .mv-public-page-action .mv-public-top-spacer{display:none}
  .mv-public-page-verify .verifyx-method-card{min-height:0}
}

/* MVP QA patch 202606: temporary link visibility */
.mv-public-body .px-public-link-expiry{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:6px 8px;
  flex-wrap:wrap;
  margin:12px auto 16px;
  padding:var(--sp-3) var(--sp-3);
  border:1px solid rgba(201,123,46,.28);
  border-radius:var(--r-lg);
  background:#FFF9ED;
  color:#68736D;
  font-size:var(--fs-xs);
  line-height:1.4;
}
.mv-public-body .px-public-link-expiry b{color:#1B4332;font-weight:780}
.mv-public-body .px-public-link-expiry em{font-style:normal;color:#9A6616;font-weight:760}
.mv-public-body .px-resend-form{margin-top:var(--sp-3);text-align:center}
.mv-public-body .px-link-btn{border:0;background:transparent;color:#1B4332;font-weight:760;cursor:pointer;text-decoration:underline;text-underline-offset:3px}

/* MVP QA patch 7: public footer unified centered pills */
.mv-public-body .mv-public-footer.has-link-expiry{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px 12px;
  flex-wrap:wrap;
  text-align:center;
}
.mv-public-body .mv-public-footer-expiry{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px 12px;
  flex-wrap:wrap;
  max-width:none;
  min-width:0;
}
.mv-public-body .mv-public-footer-expiry-title,
.mv-public-body .mv-public-footer-expiry-timer,
.mv-public-body .mv-public-footer-esign{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:38px;
  padding:var(--sp-2) var(--sp-3);
  border-radius:var(--r-pill);
  border:1px solid rgba(49,92,77,.16);
  background:rgba(255,255,255,.62);
  box-shadow:0 10px 24px -24px rgba(36,67,57,.35);
  line-height:1.4;
}
.mv-public-body .mv-public-footer-expiry-title,
.mv-public-body .mv-public-footer-esign{
  color:var(--mv-forest);
  font-weight:760;
}
.mv-public-body .mv-public-footer-expiry-timer{
  border-color:rgba(201,123,46,.24);
  background:rgba(255,249,237,.88);
}
.mv-public-body .mv-public-footer-expiry-timer em{
  background:transparent;
  border:0;
  padding:0;
  color:var(--mv-honey-d);
  font-weight:820;
  font-style:normal;
  line-height:1.4;
}
@media(max-width:760px){
  .mv-public-body .mv-public-footer.has-link-expiry,
  .mv-public-body .mv-public-footer-expiry{
    gap:8px 10px;
  }
  .mv-public-body .mv-public-footer-expiry-title,
  .mv-public-body .mv-public-footer-expiry-timer,
  .mv-public-body .mv-public-footer-esign{
    min-height:36px;
    padding:var(--sp-2) var(--sp-3);
  }
}



/* MVP QA patch 6: centered equal footer pills on public action pages */
.mv-public-body .mv-public-footer.has-link-expiry{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  flex-wrap:wrap;
  text-align:center;
  width:100%;
}
.mv-public-body .mv-public-footer-expiry{
  display:contents;
}
.mv-public-body .mv-public-footer-expiry-title,
.mv-public-body .mv-public-footer-expiry-timer,
.mv-public-body .mv-public-footer-esign{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:28px;
  padding:var(--sp-1) var(--sp-3);
  border-radius:var(--r-pill);
  border:1px solid rgba(49,92,77,.16);
  background:rgba(255,255,255,.66);
  box-shadow:none;
  color:var(--mv-forest);
  font-size:var(--fs-xs);
  font-weight:760;
  line-height:1.4;
  white-space:nowrap;
  text-decoration:none;
  width:auto;
  max-width:calc(100vw - 32px);
}
.mv-public-body .mv-public-footer-expiry-timer{
  border-color:rgba(201,123,46,.24);
  background:rgba(255,249,237,.80);
  color:var(--mv-honey-d);
}
.mv-public-body .mv-public-footer-expiry-timer em{
  display:inline;
  margin:0;
  padding:0;
  border:0;
  background:transparent;
  color:inherit;
  font-size:inherit;
  font-weight:820;
  font-style:normal;
  line-height:inherit;
}
@media(max-width:760px){
  .mv-public-body .mv-public-footer.has-link-expiry{
    gap:7px;
  }
  .mv-public-body .mv-public-footer-expiry-title,
  .mv-public-body .mv-public-footer-expiry-timer,
  .mv-public-body .mv-public-footer-esign{
    white-space:normal;
  }
}


/* MVP QA patch 13: legal markdown rendering */
.mv-public-body .mv-legal-body h2,
.mv-public-body .mv-legal-body h3,
.mv-public-body .mv-legal-body h4{
  margin:1.55em 0 .55em;
  color:var(--mv-forest);
  line-height:1.4;
  letter-spacing:-.01em;
}
.mv-public-body .mv-legal-body h2{font-size:var(--fs-xl);}
.mv-public-body .mv-legal-body h3{font-size:var(--fs-lg);}
.mv-public-body .mv-legal-body h4{font-size:var(--fs-sm);}
.mv-public-body .mv-legal-body p{margin:.78em 0;}
.mv-public-body .mv-legal-body ul{margin:.72em 0 1em;padding-left:1.2em;}
.mv-public-body .mv-legal-body li{margin:.38em 0;}
.mv-public-body .mv-legal-body strong{font-weight:820;color:var(--mv-ink);}
.mv-public-body .mv-legal-body a,
.mv-user-body .px-legal-consent-details a,
.mv-public-body .px-legal-consent-details a{
  color:var(--mv-forest);
  font-weight:760;
  text-underline-offset:3px;
}
.mv-user-body .px-legal-consent-details p,
.mv-public-body .px-legal-consent-details p{margin:.55em 0;}
.mv-user-body .px-legal-consent-details ul,
.mv-public-body .px-legal-consent-details ul{margin:.55em 0;padding-left:1.15em;}


/* UX cleanup 2026-06-14 */
.mv-public-body .px-field small,
.mv-public-body .verifyx-method-card > small{
  color:var(--text-muted);
}
.mv-public-body .verifyx-upload-final strong{
  letter-spacing:-.01em;
}

/* Medvedo cookie notice patch 2026-06-18: Doli-style compact banner, accept button on the right */
.px-cookie-notice,
.px-marketing-body .px-cookie-notice,
.mv-public-body .px-cookie-notice,
.mv-user-body .px-cookie-notice{
  position:fixed !important;
  left:50% !important;
  right:auto !important;
  bottom:max(14px, env(safe-area-inset-bottom)) !important;
  transform:translateX(-50%) !important;
  z-index:2147483647 !important;
  width:min(560px, calc(100vw - 24px)) !important;
  box-sizing:border-box !important;
  display:grid !important;
  grid-template-columns:minmax(0, 1fr) auto !important;
  align-items:center !important;
  justify-content:normal !important;
  gap:10px !important;
  padding:var(--sp-3) var(--sp-3) !important;
  border:1px solid rgba(232,221,201,.95) !important;
  border-radius:var(--r-md) !important;
  background:rgba(255,255,255,.97) !important;
  box-shadow:0 16px 44px rgba(52,37,29,.14) !important;
  backdrop-filter:blur(10px) !important;
  -webkit-backdrop-filter:blur(10px) !important;
  color:var(--text-main, #252A27) !important;
  flex-direction:unset !important;
  flex-wrap:unset !important;
}
.px-cookie-notice.is-hidden,
.px-marketing-body .px-cookie-notice.is-hidden,
.mv-public-body .px-cookie-notice.is-hidden,
.mv-user-body .px-cookie-notice.is-hidden{
  opacity:0 !important;
  transform:translateX(-50%) translateY(8px) !important;
  pointer-events:none !important;
  transition:opacity .18s ease, transform .18s ease !important;
}
.px-cookie-notice b,
.px-marketing-body .px-cookie-notice b,
.mv-public-body .px-cookie-notice b,
.mv-user-body .px-cookie-notice b{
  display:block !important;
  margin:0 0 1px !important;
  color:var(--text-main, #252A27) !important;
  font-size:var(--fs-xs) !important;
  line-height:1.4 !important;
  font-weight:800 !important;
}
.px-cookie-notice p,
.px-marketing-body .px-cookie-notice > div > p,
.mv-public-body .px-cookie-notice p,
.mv-user-body .px-cookie-notice p{
  margin:0 !important;
  max-width:none !important;
  color:var(--text-muted, #68736D) !important;
  font-size:var(--fs-xs) !important;
  line-height:1.4 !important;
}
.px-cookie-notice p a,
.px-marketing-body .px-cookie-notice p a,
.mv-public-body .px-cookie-notice p a,
.mv-user-body .px-cookie-notice p a{
  color:var(--accent-dark, #955315) !important;
  font-weight:750 !important;
  text-decoration:none !important;
}
.px-cookie-notice p a:hover,
.px-marketing-body .px-cookie-notice p a:hover,
.mv-public-body .px-cookie-notice p a:hover,
.mv-user-body .px-cookie-notice p a:hover{
  text-decoration:underline !important;
}
.px-cookie-actions,
.px-marketing-body .px-cookie-actions,
.mv-public-body .px-cookie-actions,
.mv-user-body .px-cookie-actions{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:8px !important;
  width:auto !important;
  max-width:100% !important;
  flex:0 0 auto !important;
  flex-wrap:nowrap !important;
  margin:0 !important;
}
.px-cookie-actions .px-btn,
.px-marketing-body .px-cookie-actions .px-btn,
.mv-public-body .px-cookie-actions .px-btn,
.mv-user-body .px-cookie-actions .px-btn{
  appearance:none !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:32px !important;
  width:auto !important;
  min-width:88px !important;
  margin:0 !important;
  padding:var(--sp-2) var(--sp-3) !important;
  border:0 !important;
  border-radius:var(--r-sm) !important;
  background:var(--accent, var(--mv-forest, #1B4332)) !important;
  color:#FFFFFF !important;
  font-size:var(--fs-xs) !important;
  line-height:1.4 !important;
  font-weight:800 !important;
  white-space:nowrap !important;
  cursor:pointer !important;
  box-shadow:none !important;
  text-align:center !important;
}
.px-cookie-actions .px-btn:hover,
.px-marketing-body .px-cookie-actions .px-btn:hover,
.mv-public-body .px-cookie-actions .px-btn:hover,
.mv-user-body .px-cookie-actions .px-btn:hover{
  background:var(--accent-dark, var(--mv-forest-deep, #102A1F)) !important;
  color:#FFFFFF !important;
}
@media(max-width:420px){
  .px-cookie-notice,
  .px-marketing-body .px-cookie-notice,
  .mv-public-body .px-cookie-notice,
  .mv-user-body .px-cookie-notice{
    width:calc(100vw - 20px) !important;
    grid-template-columns:minmax(0, 1fr) auto !important;
    gap:8px !important;
    padding:var(--sp-2) var(--sp-3) !important;
  }
  .px-cookie-notice p,
  .px-marketing-body .px-cookie-notice > div > p,
  .mv-public-body .px-cookie-notice p,
  .mv-user-body .px-cookie-notice p{
    font-size:var(--fs-xs) !important;
    line-height:1.4 !important;
  }
  .px-cookie-actions .px-btn,
  .px-marketing-body .px-cookie-actions .px-btn,
  .mv-public-body .px-cookie-actions .px-btn,
  .mv-user-body .px-cookie-actions .px-btn{
    min-width:84px !important;
    width:auto !important;
    padding:var(--sp-2) var(--sp-3) !important;
  }
}

/* ===========================================================================
   202606-22 · /verify — фикс адаптива строки «Код в системе».
   Базовое правило .verifyx-code-row (grid 1fr auto) добавлено в файле ПОЗЖЕ
   медиазапроса и перебивало стек на мобайле → поле сжималось, плейсхолдер
   обрезался. Это переопределение стоит в конце файла и гарантированно выигрывает
   каскад. Только визуал; разметку, JS (.verifyx-code-row input[name=code]) и
   имена полей не трогаем.
   =========================================================================== */
@media(max-width:560px){
  .mv-public-body .verifyx-code-row{
    grid-template-columns:1fr;
    gap:var(--sp-2,10px);
  }
  .mv-public-body .verifyx-code-row .px-btn{
    width:100%;
    justify-content:center;
  }
}

/* ==========================================================================
   B4 · 202606-22 · мобильная полировка публичного контура.
   Только визуал: аккуратные карточки, внутренние акцентные полоски, больше
   воздуха на мобайле и единые тач-таргеты для действий.
   ========================================================================== */
.mv-public-body .px-public-card,
.mv-public-body .verifyx-method-card,
.mv-public-body .verifyx-panel,
.mv-public-body .verifyx-final-hero,
.mv-public-body .psg-card,
.mv-public-body .mv-legal-card{isolation:isolate;overflow:hidden}
.mv-public-body .px-public-card::before{
  top:10px;
  left:18px;
  right:18px;
  height:3px;
  border-radius:999px;
  opacity:.72;
}
@media(max-width:760px){
  .mv-public-body .px-public-main-v2{padding:var(--sp-5) var(--sp-3) var(--sp-7)}
  .mv-public-body .mv-public-top{padding:var(--sp-3) var(--sp-3) var(--sp-2)}
  .mv-public-body .mv-public-nav a{min-height:42px}
  .mv-public-page-action .px-public-main-v2,
  .mv-public-page-verify .px-public-main-v2,
  .mv-public-page-legal .px-public-main-v2{padding-top:var(--sp-4)}
}
@media(max-width:640px){
  .mv-public-body .px-public-card,
  .mv-public-body .verifyx-method-card,
  .mv-public-body .verifyx-panel,
  .mv-public-body .verifyx-final-hero,
  .mv-public-body .psg-card,
  .mv-public-body .mv-legal-card{
    padding:calc(var(--sp-4) + 2px) var(--sp-3) var(--sp-4);
    border-radius:20px;
  }
  .mv-public-body .px-public-card::before{top:8px;left:14px;right:14px;height:2px}
  .mv-public-body .px-btn,
  .mv-public-body .mv-public-nav a{min-height:44px}
  .mv-public-body .px-public-actions,
  .mv-public-body .px-result-actions{display:grid;grid-template-columns:1fr;gap:10px}
  .mv-public-body .px-public-actions .px-btn,
  .mv-public-body .px-result-actions .px-btn{width:100%;justify-content:center}
  .mv-public-body .verifyx-method-top{grid-template-columns:42px minmax(0,1fr);gap:12px}
  .mv-public-body .verifyx-method-icon{width:42px;height:42px;min-width:42px}
}
