.login-shell{display:grid;grid-template-columns:minmax(0,48%) minmax(0,52%);min-height:100vh;min-height:100svh}.login-panel{display:flex;flex-direction:column;align-items:center;min-height:680px;padding:clamp(34px,5.65vh,56px) clamp(34px,5vw,92px) 34px;background:#fff;position:relative;z-index:1;text-align:center}.panel-width{width:min(100%,440px);margin-inline:auto}.panel-header{flex:0 0 auto;display:flex;justify-content:center}.login-content{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding-bottom:6px;animation:content-arrive .85s cubic-bezier(.21,.7,.19,1) both}.login-content h1{margin:0;font-size:clamp(26px,2.2vw,33px);font-weight:700;letter-spacing:-.035em;line-height:1.25;color:#182235}.login-subtitle{margin:10px 0 32px;color:#64748b;font-size:15px;font-weight:400;line-height:1.6;letter-spacing:-.01em}.microsoft-button{width:100%;min-height:56px;display:inline-flex;align-items:center;justify-content:center;gap:12px;padding:14px 22px;border:1px solid #27272a;border-radius:999px;color:#fff;background:#18181b;font-size:15px;font-weight:600;letter-spacing:-.012em;cursor:pointer;text-decoration:none;transition:background-color .18s ease,border-color .18s ease}.microsoft-button:hover{background:#27272a;border-color:#3f3f46}.microsoft-button:active{background:#09090b;border-color:#18181b}.microsoft-button:focus-visible{outline:3px solid #86a5ff;outline-offset:4px}.microsoft-logo{width:19px;height:19px;flex:none}.secure-note{display:flex;align-items:center;justify-content:center;gap:7px;margin:20px 0 0;color:#68778c;font-size:12px;line-height:1.5;text-align:center}.lock-icon{width:15px;height:15px;flex:none}.panel-footer{flex:0 0 auto;color:#6b7788;font-size:12px;letter-spacing:.005em;line-height:1.5;text-align:center}.visual-panel{position:relative;min-height:680px;overflow:hidden;isolation:isolate;background:radial-gradient(circle at 50% 48%,#2d5bf5,#224ecc 52%,#193ea7);display:flex;flex-direction:column;align-items:center}.visual-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);background-size:48px 48px;background-position:center;mask-image:radial-gradient(circle at 50% 50%,#000 35%,transparent 85%);-webkit-mask-image:radial-gradient(circle at 50% 50%,#000 35%,transparent 85%)}.sort-stage{position:relative;z-index:1;flex:1 1 0;min-height:0;width:100%;animation:fade-in .7s ease-out both}.sort-visual{position:absolute;top:0;left:2%;width:96%;height:100%;overflow:visible}.sort-token{transform-box:view-box;transform-origin:0 0;transition:transform .86s cubic-bezier(.6,0,.2,1),opacity .5s ease}.sort-drift{animation-name:drift;animation-timing-function:ease-in-out;animation-iteration-count:infinite;animation-direction:alternate}@keyframes drift{0%{transform:translate(0) rotate(0)}50%{transform:translate(3px,-5px) rotate(8deg)}to{transform:translate(-2px,-9px) rotate(-6deg)}}.sort-steps{position:relative;z-index:2;display:flex;align-items:center;justify-content:center;gap:8px;margin-bottom:clamp(36px,6vh,60px)}.sort-steps span{width:18px;height:3px;border-radius:2px;background:#ffffff4d;transition:width .45s ease,background-color .45s ease}.sort-steps span.is-active{width:38px;background:#fff}@keyframes content-arrive{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@media(max-width:1050px){.login-panel{padding-inline:40px}.login-content h1{font-size:clamp(25px,2.8vw,30px)}}@media(max-width:720px){.login-shell{grid-template-columns:1fr}.login-panel{min-height:min(640px,80svh);padding:31px 28px 29px}.login-content h1{font-size:28px}.login-subtitle{margin-bottom:26px}.visual-panel{min-height:420px}.sort-visual{left:1%;width:98%}.sort-steps{margin-bottom:30px}}@media(max-width:410px){.login-panel{min-height:620px;padding-inline:24px}.login-content h1{font-size:26px}.login-subtitle{font-size:14px}.microsoft-button{font-size:14px;min-height:52px}.secure-note{font-size:11px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-delay:0ms!important;transition-duration:.01ms!important;transition-delay:0ms!important}}
