/* «Вход в профиль»: moved from the inline <style> of login.html (2026-10-22) so the page
   can use the shared «Списки» shell, which drops inline head styles. */
*{box-sizing:border-box}
:root{--paper:var(--vz-card);--ink:var(--vz-copy);--muted:var(--vz-muted);--line:var(--vz-line);--field:var(--vz-card);--focus:var(--vz-blue);--danger:var(--vz-error)}
html{scrollbar-gutter:stable}
body{position:relative;isolation:isolate;display:flex;align-items:center;justify-content:center;min-height:100svh;margin:0;padding:32px 16px 84px;background:#779b8d;color:var(--ink);font-family:var(--vz-font-body)}
.login-atlas{position:fixed;z-index:-2;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;filter:brightness(1.1) saturate(.85)}
body::before{position:fixed;z-index:-1;inset:0;background:linear-gradient(110deg,#f1f4e72b,#c8ddcb12 55%,#07182c26);content:""}
[data-theme=dark] .login-atlas{filter:brightness(.66) saturate(.8)}
[data-theme=dark] body::before{background:#010a112b}
.login-card{width:min(360px,100%);padding:20px 22px 18px;border:1px solid var(--line);border-radius:var(--vz-card-radius);background:var(--paper);box-shadow:none}
.login-card-top{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:14px}
.login-brand{display:inline-flex}
.login-brand img{display:block;width:100px;height:66px;object-fit:contain}
.login-theme{display:grid;place-items:center;flex:none;width:40px;height:40px;padding:8px;border:1px solid var(--line);border-radius:10px;background:var(--field);color:var(--vz-blue);cursor:pointer}
.login-theme svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
h1{margin:0 0 24px;color:var(--vz-blue);font:700 32px/1.1 var(--vz-font-heading)}
label{display:block;margin:16px 0 7px;font:600 14px/1.2 var(--vz-font-body)}
input{display:block;width:100%;min-width:0;height:var(--vz-control-height);padding:10px 12px;border:1px solid var(--line);border-radius:var(--vz-control-radius);background:var(--field);color:var(--ink);font:var(--vz-control-font-size)/1.2 var(--vz-font-body);outline:none}
input:focus-visible{outline:2px solid var(--focus);outline-offset:2px;box-shadow:none}
input:is(:autofill,:-webkit-autofill){-webkit-text-fill-color:var(--ink);caret-color:var(--ink);box-shadow:0 0 0 1000px var(--field) inset}
button:focus-visible,a:focus-visible{outline:2px solid var(--focus);outline-offset:2px}
.password-field{position:relative}
.password-field input{padding-right:52px}
#password-toggle{position:absolute;top:0;right:1px;display:grid;place-items:center;width:44px;height:44px;padding:10px;border:0;border-radius:var(--vz-control-radius);background:transparent;color:var(--vz-blue);cursor:pointer}
#password-toggle:hover,.login-theme:hover{background:color-mix(in srgb,var(--focus) 8%,var(--field))}
#password-toggle svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
#password-toggle .eye-slash{display:none}
#password-toggle[aria-pressed=true] .eye-slash{display:block}
.login-submit{display:flex;align-items:center;justify-content:center;gap:9px;width:100%;min-height:var(--vz-control-height);margin:24px 0 0;padding:9px 12px;border:1px solid var(--vz-blue);border-radius:var(--vz-control-radius);background:var(--vz-blue);color:var(--vz-on-accent);box-shadow:none;font:700 var(--vz-control-font-size)/1.2 var(--vz-font-body);cursor:pointer}
.login-submit:hover{filter:brightness(.92)}
.login-submit:disabled{opacity:.65;cursor:wait}
.login-submit svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.error{min-height:18px;margin:10px 0 0;color:var(--danger);font-size:13px;line-height:1.3}
.privacy-note{margin:3px 0 18px;color:var(--muted);font-size:11px;line-height:1.45}
a{color:inherit;text-underline-offset:2px}
.login-return{display:inline-flex;align-items:center;gap:4px;min-height:44px;color:var(--vz-blue);font:14px/1.2 var(--vz-font-body);text-decoration:none}
.login-return:hover{text-decoration:underline}
.login-return svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.login-footer{padding-top:12px}
.login-card #login-services[hidden]{display:none!important}
.map-credit{position:fixed;right:8px;bottom:7px;padding:3px 6px;border-radius:4px;background:#ffffffe5;color:#526477;font:10px/1.2 Arial,sans-serif}
.map-credit a{text-decoration:none}
@media(max-width:480px){.login-theme{width:44px;height:44px}body{padding:24px 15px 38px}.login-card{padding:18px 22px}.login-atlas{object-position:42% center}}
@media(max-height:640px){body{padding-block:15px 34px}.login-card-top{margin-bottom:8px}.login-brand img{height:48px;width:74px}h1{margin-bottom:14px;font-size:26px}.login-submit{margin-top:18px}.privacy-note{margin-bottom:10px}}
html.vz-unified body.vz-public-page:has(>.login-card){min-height:100svh;padding-bottom:28px}
@media(max-width:767px){html.vz-unified body.vz-public-page:has(>.login-card){padding-bottom:calc(92px + env(safe-area-inset-bottom,0px))!important}}

/* On the shared «Списки» shell: the shell's theme button is the only one, and
   the policy link in the note stays recognisable. */
html[data-page-template="login"] .login-theme{display:none!important}
html[data-page-template="login"] .privacy-note a{color:inherit;text-decoration:underline;text-underline-offset:2px}
