.login-page{--login-primary:#cb8670;--login-primary-dark:#b5745f;--login-navy:#15202b;--login-ink:#1c1917;--login-muted:#78716c;--login-glass:#fffffff0;--login-glass-border:#d6d3d1e6;--login-slant:clamp(2.5rem, 5vw, 5rem);background:#15202b;min-height:100dvh;position:relative;overflow:hidden auto}.login-page__ambient{pointer-events:none;z-index:0;position:fixed;inset:0}.login-orb{filter:blur(80px);opacity:.55;border-radius:50%;animation:18s ease-in-out infinite login-orb-float;position:absolute}.login-orb--1{background:radial-gradient(circle,#c6a34d 0%,#0000 70%);width:420px;height:420px;top:-8%;left:-6%}.login-orb--2{background:radial-gradient(circle,#00b8db 0%,#0000 70%);width:360px;height:360px;animation-delay:-6s;bottom:10%;left:28%}.login-orb--3{background:radial-gradient(circle,#f0b100 0%,#0000 70%);width:300px;height:300px;animation-delay:-12s;top:20%;right:-4%}.login-grid{z-index:1;grid-template-columns:1fr 1fr;min-height:100vh;display:grid;position:relative;overflow:visible}.login-hero{color:#fff;z-index:2;min-height:100vh;width:calc(100% + var(--login-slant));margin-right:calc(var(--login-slant) * -1);clip-path:polygon(0 0, 100% 0, calc(100% - (var(--login-slant) * 2)) 100%, 0 100%);-webkit-clip-path:polygon(0 0, 100% 0, calc(100% - (var(--login-slant) * 2)) 100%, 0 100%);background:#0a1428;flex-direction:column;justify-content:center;padding:3rem 4rem;display:flex;position:relative;overflow:hidden}.login-hero__slideshow{z-index:0;position:absolute;inset:0}.login-hero__slide{opacity:0;background-position:50%;background-size:cover;transition:opacity 1.2s,transform 8s;position:absolute;inset:0;transform:scale(1.06)}.login-hero__slide.is-active{opacity:1;transform:scale(1)}.login-hero__slideshow-overlay{z-index:1;background:linear-gradient(145deg,#0f172ab8 0%,#0f172a80 45%,#0f172ad1 100%);position:absolute;inset:0}.login-hero__slide-dots{z-index:3;gap:.5rem;display:flex;position:absolute;bottom:2rem;left:4rem}.login-hero__slide-dot{cursor:pointer;background:0 0;border:2px solid #fff9;border-radius:50%;width:10px;height:10px;padding:0;transition:all .25s}.login-hero__slide-dot.is-active{background:var(--login-primary);border-color:var(--login-primary);transform:scale(1.15)}.login-hero:before{display:none}.login-hero__inner{z-index:2;max-width:480px;position:relative}.login-hero__badge{letter-spacing:.04em;text-transform:uppercase;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff1f;border:1px solid #fff3;border-radius:999px;align-items:center;gap:.5rem;margin-bottom:1.5rem;padding:.4rem .85rem;font-size:.78rem;animation:.7s both login-fade-up;display:inline-flex}.login-hero__badge-dot{background:#5be49b;border-radius:50%;width:8px;height:8px;animation:2s ease-in-out infinite login-pulse;box-shadow:0 0 12px #5be49b}.login-hero__title{margin-bottom:1rem;font-size:clamp(2rem,4vw,2.75rem);font-weight:700;line-height:1.15;animation:.7s .1s both login-fade-up}.login-hero__text{color:#ffffffd1;margin-bottom:2.5rem;font-size:1.05rem;line-height:1.65;animation:.7s .2s both login-fade-up}.login-hero__stats{grid-template-columns:repeat(3,1fr);gap:1rem;animation:.7s .35s both login-fade-up;display:grid}.login-hero__stat{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffff14;border:1px solid #ffffff1f;border-radius:1rem;padding:1rem;transition:transform .3s,background .3s}.login-hero__stat:hover{background:#ffffff24;transform:translateY(-4px)}.login-hero__stat-value{margin-bottom:.15rem;font-size:1.35rem;font-weight:700}.login-hero__stat-label{color:#ffffffa6;font-size:.75rem}.login-panel{padding:1.5rem 1.5rem 1.5rem calc(1.5rem + (var(--login-slant) * .45));z-index:1;background:radial-gradient(circle at 85% 15%,#cb86701f,#0000 40%),linear-gradient(165deg,#f8f5f2 0%,#efeae4 55%,#f7f1ec 100%);justify-content:center;align-items:center;min-height:100dvh;display:flex;position:relative}.login-card{background:var(--login-glass);border:1px solid var(--login-glass-border);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-radius:1.15rem;width:100%;max-width:400px;max-height:min(92dvh,720px);transition:box-shadow .3s;animation:.7s cubic-bezier(.22,1,.36,1) .1s both login-card-in;overflow:auto;box-shadow:0 18px 48px #15202b1f,inset 0 0 0 1px #ffffff8c}.login-card:hover{box-shadow:0 22px 52px #cb867024,inset 0 0 0 1px #fff9}.login-card--exit{animation:.45s forwards login-card-out}.login-card__header{text-align:center;min-height:0;padding:1.35rem 1.35rem .85rem;position:relative}.login-brand{flex-direction:column;align-items:center;gap:.45rem;animation:.5s cubic-bezier(.22,1,.36,1) both login-brand-in;display:flex}.login-brand--swap{animation:.55s cubic-bezier(.22,1,.36,1) both login-brand-swap}.login-brand__logo{object-fit:cover;border-radius:14px;width:52px;height:52px;box-shadow:0 10px 22px #cb867047}.login-brand__logo-fallback{color:#fff;background:linear-gradient(135deg, var(--login-primary), var(--login-primary-dark));border-radius:14px;justify-content:center;align-items:center;width:52px;height:52px;font-size:1.35rem;font-weight:700;display:flex;box-shadow:0 10px 22px #cb867052}.login-brand__app-icon{width:42px;height:42px;margin-bottom:.1rem}.login-brand__title{color:var(--login-ink);letter-spacing:-.01em;margin:0;font-size:1.25rem;font-weight:700}.login-brand__subtitle{color:var(--login-muted);margin:0;font-size:.84rem}.login-card__body{padding:0 1.35rem 1.1rem}.login-field{margin-bottom:1.15rem;animation:.6s both login-fade-up}.login-field:first-child{animation-delay:.25s}.login-field:nth-child(2){animation-delay:.35s}.login-field:nth-child(3){animation-delay:.45s}.login-field__label{color:#404040;margin-bottom:.45rem;font-size:.82rem;font-weight:600;display:block}.login-field__wrap{align-items:center;display:flex;position:relative}.login-field__icon{color:#a3a3a3;pointer-events:none;font-size:1.1rem;transition:color .25s,transform .25s;position:absolute;left:1rem}.login-field__input{width:100%;color:var(--login-ink);background:#ffffffd9;border:1.5px solid #e5e5e5;border-radius:.85rem;padding:.85rem 1rem .85rem 2.75rem;font-size:.92rem;transition:border-color .25s,box-shadow .25s,background .25s,transform .2s}.login-field__input::placeholder{color:#a3a3a3}.login-field__input:hover{border-color:#d4d4d4}.login-field__input:focus{border-color:var(--login-primary);background:#fff;outline:none;transform:translateY(-1px);box-shadow:0 0 0 4px #c6a34d1f}.login-field__wrap:focus-within .login-field__icon{color:var(--login-primary);transform:scale(1.08)}.login-field__input.is-invalid{border-color:#fb2c36;box-shadow:0 0 0 4px #fb2c361a}.login-field__toggle{color:#a3a3a3;cursor:pointer;background:0 0;border:0;padding:.25rem;transition:color .2s;position:absolute;right:.75rem}.login-field__toggle:hover{color:var(--login-primary)}.login-field__error{color:#fb2c36;margin-top:.4rem;font-size:.78rem;animation:.45s login-shake}.login-options{justify-content:space-between;align-items:center;margin-bottom:1.35rem;animation:.6s .5s both login-fade-up;display:flex}.login-page .login-submit,.login-submit{cursor:pointer;appearance:none;border-radius:.75rem;width:100%;padding:.85rem 1rem;font-size:.92rem;font-weight:700;transition:transform .25s,box-shadow .25s;animation:.6s .55s both login-fade-up;position:relative;overflow:hidden;box-shadow:0 10px 24px #15202b47;color:#fff!important;background-color:#15202b!important;background-image:linear-gradient(135deg,#15202b 0%,#243447 100%)!important;border:0!important}.login-page .login-submit:after,.login-submit:after{content:"";pointer-events:none;background:linear-gradient(120deg,#0000 30%,#ffffff29 50%,#0000 70%);transition:transform .6s;position:absolute;inset:0;transform:translate(-120%)}.login-page .login-submit:hover:not(:disabled),.login-submit:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 12px 28px #15202b5c;color:#fff!important;background-color:#1c2a38!important;background-image:linear-gradient(135deg,#1c2a38 0%,#2d4156 100%)!important}.login-page .login-submit:hover:not(:disabled):after,.login-submit:hover:not(:disabled):after{transform:translate(120%)}.login-page .login-submit:active:not(:disabled),.login-submit:active:not(:disabled){transform:translateY(0)}.login-page .login-submit:disabled,.login-submit:disabled{opacity:.8;cursor:not-allowed;color:#fff!important}.login-page .login-submit i,.login-submit i{color:#fff!important}.login-submit__spinner{vertical-align:-.15rem;border:2px solid #ffffff59;border-top-color:#fff;border-radius:50%;width:1.1rem;height:1.1rem;margin-right:.5rem;animation:.7s linear infinite login-spin;display:inline-block}.login-config{border-top:1px solid #0000000f}.login-config__toggle{color:#57534e;cursor:pointer;background:#f5f5f5b3;border:0;justify-content:space-between;align-items:center;width:100%;padding:.8rem 1.15rem;font-size:.84rem;font-weight:600;transition:background .25s,color .25s;display:flex}.login-config__toggle:hover{color:var(--login-primary-dark);background:#cb86701a}.login-config__chevron{transition:transform .35s cubic-bezier(.22,1,.36,1)}.login-config__chevron.is-open{transform:rotate(180deg)}.login-config__panel{grid-template-rows:0fr;transition:grid-template-rows .4s cubic-bezier(.22,1,.36,1);display:grid}.login-config__panel.is-open{grid-template-rows:1fr}.login-config__panel-inner{overflow:hidden}.login-config__content{background:#f8f5f2d9;padding:0 1.15rem 1.15rem}.login-config__hint{color:var(--login-muted);margin-bottom:.65rem;font-size:.78rem;line-height:1.45}.login-config__actions{align-items:stretch;gap:.55rem;display:flex}.login-connect{background:linear-gradient(135deg, var(--login-primary), var(--login-primary-dark));color:#fff;cursor:pointer;border:0;border-radius:.7rem;flex:auto;justify-content:center;align-items:center;gap:.25rem;min-height:2.55rem;padding:.6rem .9rem;font-family:inherit;font-size:.88rem;font-weight:700;transition:transform .2s,box-shadow .2s,opacity .2s;display:inline-flex;box-shadow:0 8px 18px #cb867047}.login-connect:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 10px 22px #cb86705c}.login-connect:disabled{opacity:.65;cursor:not-allowed}.login-connect--ghost{color:#57534e;box-shadow:none;background:#fff;border:1px solid #d6d3d1;flex:none}.login-connect--ghost:hover:not(:disabled){box-shadow:none;background:#fafaf9}.login-hotel-chip{color:#007a32;background:#00c9511f;border-radius:999px;align-items:center;gap:.4rem;margin-bottom:.85rem;padding:.3rem .65rem;font-size:.74rem;font-weight:600;animation:.4s both login-chip-in;display:inline-flex}.login-footer-note{text-align:center;color:#a8a29e;padding:0 1.25rem 1.15rem;font-size:.74rem;line-height:1.4}@keyframes login-orb-float{0%,to{transform:translate(0)scale(1)}33%{transform:translate(30px,-20px)scale(1.05)}66%{transform:translate(-20px,25px)scale(.95)}}@keyframes login-grid-pan{0%{background-position:0 0}to{background-position:48px 48px}}@keyframes login-fade-up{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes login-card-in{0%{opacity:0;transform:translateY(28px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes login-card-out{to{opacity:0;transform:translateY(-12px)scale(.98)}}@keyframes login-brand-in{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}@keyframes login-brand-swap{0%{opacity:1;transform:translateY(0)}40%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}@keyframes login-shake{0%,to{transform:translate(0)}20%{transform:translate(-6px)}40%{transform:translate(6px)}60%{transform:translate(-4px)}80%{transform:translate(4px)}}@keyframes login-spin{to{transform:rotate(360deg)}}@keyframes login-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(.85)}}@keyframes login-chip-in{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@media (max-width:1199.98px){.login-page{--login-slant:clamp(2.25rem, 4.5vw, 4.25rem)}.login-hero{padding:2.5rem 3rem}}@media (max-width:991.98px){.login-grid{grid-template-columns:1fr}.login-hero{clip-path:none;width:100%;margin-right:0;display:none}.login-panel{align-items:flex-start;min-height:100dvh;padding:1.25rem .85rem 1.5rem}.login-card{border-radius:1rem;max-width:420px;max-height:none;margin:0 auto}.login-card__header{padding:1.15rem 1.1rem .7rem}.login-card__body{padding:0 1.1rem 1rem}.login-footer-note{padding:0 1rem 1rem}}@media (min-width:1600px){.login-page{--login-slant:6.25rem}}@media (prefers-reduced-motion:reduce){.login-orb,.login-brand,.login-card,.login-field,.login-submit,.login-hero__badge,.login-hero__title,.login-hero__text,.login-hero__stats,.login-options{transition:none!important;animation:none!important}}
