/* LOGIN page (+ add airport / reset password forms) */
.auth{position:relative;flex:1 0 auto;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;padding:28px 18px;overflow:hidden}
.auth .bg{position:absolute;inset:0;width:100%;height:100%}
.auth:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(8,22,48,.62),rgba(8,22,48,.28))}
.auth>*:not(.bg){position:relative;z-index:2}
.auth-card{--g:#1d6bf3;width:min(460px,100%);padding:28px 30px 26px;border-radius:18px;background:#fff;box-shadow:0 24px 60px rgba(8,22,48,.45);display:flex;flex-direction:column;gap:16px}
.ah{display:flex;align-items:center;gap:14px}
.ah img{width:62px;height:62px;flex:none;object-fit:contain}
.ah div{flex:1;min-width:0;text-align:center}
.ah b{display:block;font-size:17px;color:var(--navy);line-height:1.2}
.ah span{display:block;font-size:13px;color:var(--mut);line-height:1.3;margin-top:2px}
.auth-card h1{margin:0;padding-top:14px;border-top:1px solid #e1e8f2;text-align:center;font-size:24px;line-height:1.2;color:var(--navy)}
.auth-card form{display:none;flex-direction:column;gap:14px}
.auth-card .cv input{font-size:18px}
.auth-card .btn{width:100%;height:50px}
body[data-view=login] .side,body[data-view=login] .tabs,body[data-view=login] .top select,body[data-view=login] .st,body[data-view=login] .lo{display:none}
body[data-view=login] .main{padding:0}
body[data-view=login] #v-login{display:flex}
.auth-card h1{font-size:44px;letter-spacing:.18em;padding-bottom:0}
.auth-card h1{padding-bottom:0;font-size:24px;letter-spacing:.34em;text-indent:.34em}
.alt{align-self:center;padding:4px 8px;border:0;background:none;color:var(--acc);font:700 15px var(--ff);cursor:pointer}
.alt:hover{text-decoration:underline}
.hint{margin:0;font-size:13px;color:var(--mut)}
.mars-title{margin:0;display:flex;flex-wrap:wrap;justify-content:center;align-items:baseline;gap:2px 36px;color:#fff;text-align:center}
.mars-title span{display:flex;align-items:baseline;font-size:clamp(20px,2.3vw,32px);font-weight:600;letter-spacing:.03em;filter:drop-shadow(0 3px 10px rgba(8,22,48,.55));opacity:0;animation:rise .6s cubic-bezier(.2,.7,.2,1) forwards}
.mars-title span:nth-child(2){animation-delay:.1s}
.mars-title span:nth-child(3){animation-delay:.2s}
.mars-title span:nth-child(4){animation-delay:.3s}
.mars-title b{margin-right:3px;font-size:clamp(60px,7.4vw,112px);line-height:.85;font-weight:800;background:linear-gradient(180deg,#fff 10%,#ffcf7a 90%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
@keyframes rise{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.mars-title span{animation:none;opacity:1}}

.auth-card[data-mode=login] #loginForm,.auth-card[data-mode=add] #addForm,.auth-card[data-mode=forgot] #fgForm{display:flex}
.alts{display:flex;justify-content:space-between;gap:10px}
.two{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.two .cv input{font-size:16px}
.mars-title{gap:0 32px}
.mars-title span{font-size:clamp(26px,3.2vw,46px);font-weight:700}
.mars-title b{font-size:1.2em;line-height:1;margin-right:0}
.auth>.flyer{position:absolute;z-index:1;left:0;top:13%;display:flex;align-items:center;color:#fff;opacity:.92;filter:drop-shadow(0 2px 6px rgba(8,22,48,.5));pointer-events:none;animation:fly 20s linear infinite}
.auth>.flyer svg{width:34px;height:34px;flex:none;transform:rotate(90deg)}
.auth>.flyer i{display:block;width:clamp(120px,16vw,240px);height:2px;margin-right:-8px;border-radius:2px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.8))}
.auth>.flyer.r{top:30%;flex-direction:row-reverse;opacity:.75;animation:fly-r 28s linear infinite;animation-delay:-9s}
.auth>.flyer.r svg{width:24px;height:24px;transform:rotate(-90deg)}
.auth>.flyer.r i{margin-right:0;margin-left:-6px;background:linear-gradient(90deg,rgba(255,255,255,.8),transparent)}
@keyframes fly{0%{transform:translate(-30vw,0)}50%{transform:translate(45vw,-16px)}100%{transform:translate(115vw,6px)}}
@keyframes fly-r{0%{transform:translate(115vw,0)}50%{transform:translate(45vw,12px)}100%{transform:translate(-30vw,-6px)}}
@media(prefers-reduced-motion:reduce){.auth>.flyer{display:none}}
@media(max-width:520px){.two{grid-template-columns:1fr}}
