html,body{height:100%;min-height:100%;margin:0}
body{font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
.page-shell,.login-screen{min-height:100vh;display:flex;flex-direction:column;background:#fff;overflow-x:hidden}
.login-screen::before{display:none!important}
.site-header{border-bottom:1px solid #e2e8f0;background:rgba(255,255,255,.95)}
.header-container{width:100%;max-width:1280px;margin:0 auto;padding:16px;display:flex;align-items:center;justify-content:space-between}
.header-brand{font-size:18px;line-height:28px;font-weight:700;letter-spacing:-.025em;color:#0f172a;text-decoration:none;white-space:nowrap}
.login-main,.login-main-container{width:100%;max-width:none;margin:0;flex:1 1 0%;min-height:0;display:flex;align-items:center;justify-content:center;padding:56px 24px 72px}
.login-panel{width:100%;max-width:360px}
.login-brand-block{display:flex;align-items:baseline;gap:8px;margin-bottom:24px}
.login-brand{font-size:20px;line-height:28px;font-weight:700;letter-spacing:-.025em;color:#020617}
.login-product{font-size:12px;line-height:16px;font-weight:700;letter-spacing:.14em;color:#64748b}
.login-panel h1,.login-card-title{margin:0 0 16px;color:#0f172a;font-size:24px;line-height:32px;font-weight:700;letter-spacing:-.025em}
.login-form{display:flex;flex-direction:column;gap:16px;margin:0}
.login-form label,.field-label{display:block}
.login-form label>span,.field-label>span{display:block;margin-bottom:7px;color:#475569;font-size:13px;line-height:20px;font-weight:500}
.login-form input[type="text"],.login-form input[type="email"],.login-form input[type="password"],.field-label input{width:100%;height:42px;min-height:42px;padding:0 11px;border:1px solid #cbd5e1;border-radius:4px;background:#fff;color:#0f172a;font-size:14px;line-height:20px;outline:none}
.login-form input::placeholder,.field-label input::placeholder{color:#94a3b8}
.login-form input:focus,.field-label input:focus{border-color:#64748b}
.password-field{position:relative}
.password-field input{padding-right:54px}
.password-toggle{position:absolute;right:0;top:0;display:inline-flex;width:54px;height:42px;align-items:center;justify-content:center;padding:0 12px;border:0;background:transparent;color:#64748b;font-size:12px;line-height:1;white-space:nowrap;cursor:pointer}
.password-toggle:hover{color:#0f172a}
.remember-login-row,.remember-row{display:flex!important;align-items:center;gap:8px;color:#64748b;font-size:14px;line-height:20px;cursor:pointer}
.remember-login-row input,.remember-row input{width:14px!important;height:14px!important;min-height:0!important;margin:0;padding:0;accent-color:#0f172a}
.remember-login-row>span,.remember-row>span{display:inline!important;margin:0!important;color:#64748b!important;font-size:14px!important;line-height:20px!important;font-weight:400!important}
.login-button,.primary-btn{width:100%;height:42px;min-height:42px;margin:0;padding:0 16px;border:0;border-radius:4px;background:#0f172a;color:#fff;font-size:14px;line-height:20px;font-weight:600;cursor:pointer}
.login-button:hover,.primary-btn:hover{background:#1e293b}
.login-button:disabled,.primary-btn:disabled{cursor:not-allowed;opacity:.6}
.login-status{margin:0;font-size:13px;line-height:20px}
.login-status-error{color:#b91c1c}.login-status-success{color:#047857}
.login-extra-actions{display:flex;align-items:center;gap:16px;padding-top:4px}
.text-action{padding:0;border:0;background:transparent;color:#64748b;font-size:12px;line-height:16px;cursor:pointer}
.text-action:hover{color:#0f172a;text-decoration:underline}
.account-guide{margin:18px 0 0;padding:0;border:0;border-radius:0;background:transparent;color:#64748b;font-size:12px;line-height:1.65}
.preview-watermark{margin:20px 0 0;color:#94a3b8;font-size:11px;line-height:16px}
.site-footer,.login-footer{margin-top:auto;border-top:1px solid #e2e8f0;background:#fff;padding:16px 0}
.footer-container,.login-footer-container{width:100%;max-width:1280px;margin:0 auto;padding:0 24px}
.footer-content,.login-footer-content{display:flex;align-items:center;justify-content:space-between;gap:16px}
.footer-copyright,.login-footer-copyright{margin:0;color:#94a3b8;font-size:12px;line-height:18px}
.footer-links,.login-footer-links{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:12px}
.footer-links a,.login-footer-links a{color:#64748b;text-decoration:none;font-size:12px;line-height:18px}
.footer-links a:hover,.login-footer-links a:hover{color:#0f172a;text-decoration:underline}
@media(max-width:620px){
  .header-container{padding-left:16px;padding-right:16px}
  .header-brand{font-size:18px}
  .login-main,.login-main-container{align-items:flex-start;padding:44px 20px 56px}
  .footer-container,.login-footer-container{padding-left:16px;padding-right:16px}
  .footer-content,.login-footer-content{flex-direction:column;align-items:flex-start;gap:8px}
  .footer-links,.login-footer-links{justify-content:flex-start}
}
@media(min-width:640px){
  .header-container{padding-left:24px;padding-right:24px}
  .header-brand{font-size:20px}
}
@media(min-width:1024px){
  .header-container{padding-left:32px;padding-right:32px}
}
