@font-face{font-family:Onest;src:url('/design/assets/68e5e01d6265bd68.woff2') format('woff2');font-weight:400 700;font-display:swap;unicode-range:U+0400-052F,U+2116}
@font-face{font-family:Onest;src:url('/design/assets/052df74533250c2e.woff2') format('woff2');font-weight:400 700;font-display:swap}
@font-face{font-family:Geologica;src:url('/design/assets/a7dc739efa0c2d40.woff2') format('woff2');font-weight:300 700;font-display:swap;unicode-range:U+0400-052F,U+2116}
@font-face{font-family:Geologica;src:url('/design/assets/b14f1edee95a57f8.woff2') format('woff2');font-weight:300 700;font-display:swap}

.portal-auth{background:#f3f5f9;background-image:linear-gradient(#e4e9f1 1px,transparent 1px),linear-gradient(90deg,#e4e9f1 1px,transparent 1px);background-size:40px 40px;font-family:Onest,Arial,sans-serif;color:#0b1530;min-height:calc(100vh - 76px);padding:64px 48px 96px}
.portal-auth__inner{max-width:1320px;margin:auto;display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(48px,7vw,112px);align-items:start}
.portal-auth__intro{position:sticky;top:120px;display:flex;flex-direction:column;align-items:flex-start;min-width:0}
.portal-auth__back{font-size:14px;color:#1e50e6;text-decoration:none;margin-bottom:64px;font-weight:600}
.portal-auth__back:hover{text-decoration:underline}
.portal-auth__eyebrow{font:500 11px/1.4 'JetBrains Mono',Consolas,monospace;letter-spacing:.11em;color:#1e50e6;text-transform:uppercase}
.portal-auth__title{font:700 clamp(52px,6vw,96px)/.98 Geologica,Onest,sans-serif;letter-spacing:-.055em;margin:24px 0 30px;color:#0b1530}
.portal-auth__title span{color:#1e50e6}
.portal-auth__lead{font-size:20px;line-height:1.5;color:#4f5a70;max-width:440px;margin:0}
.portal-auth__note{margin-top:76px;padding-top:22px;border-top:1px solid #c5cddb;display:flex;gap:22px;align-items:center;font-size:13px;color:#4f5a70;max-width:440px}
.portal-auth__note-number{font:600 12px/1.4 Consolas,monospace;color:#1e50e6;white-space:nowrap}
.portal-auth__content{min-width:0;background:#fff;border:1px solid #d6dce7;border-radius:16px;padding:36px;box-shadow:0 30px 60px -44px rgba(7,18,43,.38)}
.portal-auth__heading{margin-bottom:30px}
.portal-auth__heading .page-title{font:700 clamp(28px,3vw,38px)/1.1 Geologica,Onest,sans-serif;letter-spacing:-.035em;color:#0b1530;margin:12px 0 10px;text-align:left}
.portal-auth__heading p{margin:0;color:#5f6a83;font-size:15px}
.portal-auth--register .form-card{box-shadow:none;border:0;border-radius:0;padding:0;background:transparent}
.portal-auth .form-grid{gap:20px}
.portal-auth .form-label{font:600 14px/1.35 Onest,sans-serif;color:#0b1530;margin:0}
.portal-auth .input,.portal-auth .select{min-height:50px;border:1px solid #c5cddb;border-radius:10px;background-color:#fff;padding:12px 15px;font:400 15px/1.3 Onest,sans-serif;color:#0b1530;box-shadow:none;width:100%}
.portal-auth .input:hover,.portal-auth .select:hover{border-color:#8e9ab3}
.portal-auth .input:focus,.portal-auth .select:focus{outline:0;border-color:#1e50e6;box-shadow:0 0 0 3px rgba(30,80,230,.16)}
.portal-auth .select-multi{min-height:112px;padding:10px 12px;background-image:none}
.portal-auth .input-btn-icon{border:0;background:transparent;right:8px}
.portal-auth .input-btn-icon:hover{background:#eef1f7}
.portal-auth .radio-pill{min-height:44px;border-radius:8px;padding:10px 18px;border-color:#c5cddb;font-family:Onest,sans-serif}
.portal-auth .radio:checked+.radio-pill{background:#1e50e6;border-color:#1e50e6}
.portal-auth .radio:focus-visible+.radio-pill{outline:2px solid #1e50e6;outline-offset:2px}
.portal-auth .chip{border-radius:8px;background:#e8eeff;color:#1638b0;font-family:Onest,sans-serif}
.portal-auth .form-actions{display:flex;flex-direction:column;align-items:stretch;gap:16px;margin-top:30px}
.portal-auth .button--primary{min-height:56px;width:100%;border-radius:10px;background:#1e50e6;border:1px solid #1e50e6;color:#fff;font:600 16px/1 Onest,sans-serif;display:flex;align-items:center;justify-content:center;gap:10px}
.portal-auth .button--primary:hover{background:#1840bd;border-color:#1840bd;color:#fff}
.portal-auth .form-help{font:400 14px/1.5 Onest,sans-serif;color:#5f6a83;margin:0;text-align:center}
.portal-auth .form-help a{color:#1e50e6;font-weight:600}
.portal-auth .yandex-id-info{background:#e8eeff;color:#0b1530;border:1px solid #cbd8ff;border-radius:12px;padding:20px;margin-bottom:28px;font-size:14px}
.portal-auth .yandex-id-info .text-muted{color:#4f5a70!important}
.portal-auth .yandex-id-info .btn{background:#fff;border:1px solid #b9c9ff;color:#1638b0;font:600 13px/1.2 Onest,sans-serif;border-radius:8px;min-height:40px;display:inline-flex;align-items:center;justify-content:center;text-align:center;padding:10px 14px;white-space:normal}
.portal-auth .yandex-id-info .btn:hover{background:#dce5ff}
.portal-auth .alert-danger{border-radius:10px}
.portal-auth .pwd-hint:focus-within .pwd-tooltip{opacity:1;visibility:visible;transform:translateY(0)}
.portal-auth--login .portal-auth__inner{grid-template-columns:minmax(0,1fr) minmax(0,480px);align-items:center;min-height:calc(100vh - 240px)}
.portal-auth--login .auth-card{max-width:none}
.portal-auth--login .portal-auth__back{margin-bottom:64px}
.portal-auth--login .form-grid{grid-template-columns:1fr}
.portal-auth--login .form-help+.form-help{margin-top:-8px}
@media(max-width:900px){.portal-auth{padding:36px 24px 64px}.portal-auth__inner,.portal-auth--login .portal-auth__inner{display:flex;flex-direction:column;gap:36px;min-height:0}.portal-auth__intro{position:static}.portal-auth__back,.portal-auth--login .portal-auth__back{margin-bottom:30px}.portal-auth__title{font-size:clamp(48px,10vw,72px);margin:16px 0}.portal-auth__lead{font-size:17px}.portal-auth__note{display:none}.portal-auth__content{width:100%}}
@media(max-width:600px){.portal-auth{padding:24px 16px 48px}.portal-auth__content{padding:24px 18px}.portal-auth .form-grid{grid-template-columns:1fr}.portal-auth__heading .page-title{font-size:28px}}
@media(max-width:900px){.portal-auth{padding-left:max(24px,env(safe-area-inset-left,0px));padding-right:max(24px,env(safe-area-inset-right,0px));padding-bottom:max(64px,env(safe-area-inset-bottom,0px))}}
@media(max-width:600px){.portal-auth{padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px));padding-bottom:max(48px,env(safe-area-inset-bottom,0px))}}

.portal-auth :where(.form-field,.input-wrap,.form-label){min-width:0}
.portal-auth .form-label{position:relative}
.portal-auth .pwd-hint{position:static}
.portal-auth .pwd-tooltip{left:0;max-width:100%;width:260px}
.portal-auth .input--with-icon-right{padding-right:50px}
.portal-auth .chip{max-width:100%;white-space:normal;overflow-wrap:normal;line-height:1.4}
.portal-auth .chip__x{flex:none}
.portal-auth__title,.portal-auth__heading .page-title{overflow-wrap:normal}
.portal-auth .select-multi[hidden]{display:none}
.portal-auth .profile-options{display:grid;gap:10px}
.portal-auth .profile-options label{display:flex;align-items:flex-start;gap:12px;padding:14px;border:1px solid #c5cddb;border-radius:10px;font:500 15px/1.4 Onest,sans-serif;cursor:pointer}
.portal-auth .profile-options input{flex:none;width:18px;height:18px;margin-top:2px;accent-color:#1e50e6}
.portal-auth .profile-options label:has(:checked){background:#e8eeff;border-color:#1e50e6}
.portal-auth .profile-options label:focus-within{outline:2px solid #1e50e6;outline-offset:2px}
