.login-container{min-height:100vh;font-family:var(--font-sans);background-color:#fcfcfc;flex-direction:column;justify-content:center;align-items:center;padding:40px 20px;display:flex}.login-card{background-color:var(--color-white);border:1px solid #f0f0f0;border-radius:24px;width:100%;max-width:1100px;height:700px;display:flex;overflow:hidden;box-shadow:0 4px 40px #0000000d}.login-left{flex-direction:column;flex:1;justify-content:center;padding:60px;display:flex}.login-right{background:#f6f4f0;flex:1.1;position:relative;overflow:hidden}.login-right-pane{position:absolute;inset:0}.login-right-form-pane{background:#fff;justify-content:center;align-items:center;padding:56px 48px;display:flex;overflow-y:auto}.login-right-form-pane--scroll{align-items:flex-start;padding:40px 32px}.login-right-form-inner{width:100%;max-width:440px}.login-right-form-pane--scroll .login-right-form-inner{max-width:560px}.login-right-title{color:#1a1a1a;margin-bottom:6px;font-size:28px;font-weight:700}.login-right-desc{color:#666;margin-bottom:24px;font-size:14px}.login-right-image{background:url(https://images.unsplash.com/photo-1555041469-a586c61ea9bc?auto=format&fit=crop&w=800&q=80) 50%/cover no-repeat;position:absolute;inset:0}.login-right-overlay{background:linear-gradient(#0000001a 0%,#0000008c 100%);position:absolute;inset:0}.login-right-content{z-index:2;flex-direction:column;gap:8px;display:flex;position:absolute;bottom:48px;left:40px;right:40px}.login-right-tagline{font-family:var(--font-serif);color:#fff;letter-spacing:.5px;font-size:28px;font-weight:600;line-height:1.2}.login-right-sub{color:#ffffffbf;font-size:14px;line-height:1.5}.login-outer-logo{color:#1a1a1a;align-items:center;gap:8px;margin-bottom:32px;font-size:20px;font-weight:700;display:flex}.login-outer-logo img,.login-outer-logo-img{object-fit:contain;filter:brightness(0);width:auto;height:28px;display:block}.login-scroll-hint{color:#fff;cursor:pointer;z-index:5;background:#1a1a1a;border:none;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;transition:opacity .25s,transform .25s;animation:1.5s ease-in-out infinite loginScrollHintBounce;display:flex;position:absolute;bottom:16px;right:16px;box-shadow:0 6px 16px #00000038}.login-scroll-hint:hover{background:#000}.login-scroll-hint--hidden{opacity:0;pointer-events:none;transform:translateY(8px)}@keyframes loginScrollHintBounce{0%,to{transform:translateY(0)}50%{transform:translateY(6px)}}.login-back{color:#666;z-index:10;align-items:center;gap:4px;font-size:13px;text-decoration:none;display:inline-flex;position:absolute;top:24px;right:24px}.login-back:hover{color:#1a1a1a}.login-mode-list{flex-direction:column;gap:12px;margin-top:8px;display:flex}.login-mode-btn{cursor:pointer;text-align:left;background:#fff;border:1px solid #e2e2e2;border-radius:12px;justify-content:space-between;align-items:center;gap:16px;padding:18px 20px;transition:all .2s;display:flex}.login-mode-btn:hover{border-color:#1a1a1a;transform:translateY(-1px);box-shadow:0 4px 12px #0000000f}.login-mode-btn.active{color:#fff;background:#1a1a1a;border-color:#1a1a1a}.login-mode-btn span{flex-direction:column;gap:2px;display:flex}.login-mode-btn strong{font-size:15px;font-weight:700}.login-mode-btn em{color:#888;font-size:12px;font-style:normal}.login-mode-btn.active em{color:#ffffffb3}.login-mode-btn svg{opacity:.5;flex-shrink:0}.login-mode-btn.active svg{opacity:1}.login-header{align-items:center;gap:8px;margin-bottom:60px;display:flex}.login-logo{letter-spacing:-.5px;align-items:center;gap:8px;font-size:24px;font-weight:800;display:flex}.login-logo-icon{color:#fff;background:#000;border-radius:8px;justify-content:center;align-items:center;width:32px;height:32px;font-size:20px;font-weight:900;display:flex}.login-content{width:100%;max-width:400px;margin:0 auto}.login-title{color:var(--color-black);margin-bottom:8px;font-size:32px;font-weight:600}.login-subtitle{color:#666;margin-bottom:40px;font-size:16px}.login-form{flex-direction:column;gap:20px;display:flex}.form-group{flex-direction:column;gap:8px;display:flex}.form-label-row{justify-content:space-between;align-items:center;display:flex}.form-label{color:#333;font-size:14px;font-weight:500}.form-link{color:#666;font-size:14px;text-decoration:underline}.form-input-wrapper{position:relative}.form-input{border:1px solid #e2e2e2;border-radius:8px;width:100%;padding:12px 16px;font-family:inherit;font-size:16px;transition:border-color .2s,box-shadow .2s}.form-input:focus{border-color:#000;outline:none;box-shadow:0 0 0 1px #000}.password-toggle{color:#999;cursor:pointer;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.submit-btn{color:#fff;background:#000;border-radius:8px;margin-top:10px;padding:14px;font-size:16px;font-weight:600;transition:opacity .2s}.submit-btn:hover{opacity:.9}.login-footer-text{color:#666;text-align:center;margin-top:32px;font-size:14px;line-height:1.5}.login-footer-text a{text-decoration:underline}.signup-prompt{text-align:center;color:#666;margin-top:32px;font-size:14px}.signup-link{color:#000;cursor:pointer;font-family:inherit;font-weight:600;font-size:inherit;background:0 0;border:none;padding:0;text-decoration:underline}.copyright{color:#999;text-align:center;margin-top:auto;font-size:14px}.login-mobile-back{display:none}@media (max-width:968px){.login-card[data-mode=idle] .login-right,.login-card:not([data-mode=idle]) .login-left{display:none}.login-card{flex-direction:column;height:auto}.login-left{flex:1;max-width:100%;padding:40px 20px}.login-right{flex:1;min-height:100vh}.login-right-form-pane{padding:28px 20px}.login-right-form-pane--scroll{padding:24px 16px}.login-mobile-back{z-index:5;color:#333;cursor:pointer;background:#fff;border:1px solid #e2e2e2;border-radius:999px;align-items:center;gap:4px;padding:8px 12px;font-size:13px;font-weight:500;display:inline-flex;position:absolute;top:14px;left:14px}.login-mobile-back:hover{background:#f5f5f5}}@media (max-width:480px){.login-container{padding:0}.login-card{height:auto;min-height:100vh;box-shadow:none;border:none;border-radius:0}.login-left{padding:32px 18px}.login-subtitle{margin-bottom:24px;font-size:15px}.form-input{padding:13px 16px}.submit-btn{width:100%;min-height:48px;padding:14px}}
