.login-container{backdrop-filter:blur(20px);background:hsla(0,0%,100%,.03);border:1px solid var(--color-border);border-radius:var(--radius-xl);box-shadow:0 20px 40px rgba(0,0,0,.3);margin:0 auto;max-width:420px;overflow:hidden}.login-header{background:hsla(0,0%,100%,.02);padding:2.5rem 2.5rem 1.5rem;text-align:center}.login-logo{align-items:center;background:var(--color-bg-glass);border:1px solid var(--color-border);border-radius:var(--radius-lg);color:var(--color-primary);display:flex;font-size:1.5rem;font-weight:var(--font-weight-bold);height:50px;justify-content:center;margin:0 auto var(--space-4);transition:var(--transition-base);width:50px}.login-logo:hover{background:var(--color-bg-glass-hover);border-color:var(--color-primary)}.login-title{color:var(--color-text-primary);font-size:1.75rem;font-weight:var(--font-weight-bold);margin-bottom:var(--space-2)}.login-subtitle{color:var(--color-text-secondary);font-size:.875rem;font-weight:var(--font-weight-medium)}.login-form{padding:0 2.5rem 2rem}.form-group{margin-bottom:1.5rem}.form-group label{color:var(--color-text-primary);display:block;font-size:.875rem;font-weight:var(--font-weight-medium);margin-bottom:.5rem}.form-group input{backdrop-filter:blur(10px);background:var(--color-bg-glass);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-sizing:border-box;color:var(--color-text-primary);font-size:1rem;padding:1rem;transition:all var(--transition-base);width:100%}.form-group input:focus{background:var(--color-bg-glass-hover);border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(0,245,255,.1);outline:none}.form-group input::placeholder{color:var(--color-text-tertiary)}.password-input-container{position:relative}.password-toggle{background:none;border:none;border-radius:var(--radius-lg);color:var(--color-text-secondary);cursor:pointer;font-size:1rem;padding:.5rem;position:absolute;right:1rem;top:50%;transform:translateY(-50%);transition:all var(--transition-fast)}.password-toggle:hover{background:var(--color-bg-glass);color:var(--color-text-primary)}.password-toggle:focus{outline:2px solid var(--color-primary);outline-offset:2px}.form-options{gap:1rem;justify-content:space-between;margin-bottom:2rem}.checkbox-group,.form-options{align-items:center;display:flex}.checkbox-group{gap:.5rem}.checkbox-group input[type=checkbox]{accent-color:var(--color-primary);margin:0;width:auto}.checkbox-group label{color:var(--color-text-secondary);cursor:pointer;margin:0}.checkbox-group label,.forgot-link{font-size:.875rem;font-weight:var(--font-weight-medium)}.forgot-link{color:var(--color-primary);text-decoration:none;transition:all var(--transition-fast)}.forgot-link:hover{color:var(--color-primary-light)}.btn.btn-primary{align-items:center;background:var(--color-bg-glass);border:1px solid var(--color-primary);border-radius:var(--radius-lg);color:var(--color-primary);cursor:pointer;display:flex;font-size:1rem;font-weight:var(--font-weight-semibold);gap:.5rem;justify-content:center;overflow:hidden;padding:1rem 2rem;position:relative;transition:all var(--transition-base);width:100%}.btn.btn-primary:hover{background:var(--color-bg-glass-hover);border-color:var(--color-primary-light);color:var(--color-primary-light);transform:none}.btn.btn-primary:active{background:hsla(0,0%,100%,.08);transform:scale(.98)}.btn-spinner{animation:spin 1s linear infinite;border:2px solid transparent;border-radius:50%;border-top-color:currentcolor;height:1.125rem;width:1.125rem}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.security-features{background:hsla(0,0%,100%,.01);border-top:1px solid var(--color-border);padding:1.5rem 2.5rem}.security-item{align-items:center;color:var(--color-text-secondary);display:flex;font-size:.8rem;gap:.75rem;margin-bottom:.75rem}.security-item:last-child{margin-bottom:0}.security-item .security-icon{color:var(--color-success);font-size:.75rem;font-weight:var(--font-weight-semibold)}.register-link{background:hsla(0,0%,100%,.01);border-top:1px solid var(--color-border);padding:1.5rem 2.5rem;text-align:center}.register-link p{color:var(--color-text-secondary);font-size:.875rem;margin:0}.register-link a{color:var(--color-primary);font-weight:var(--font-weight-medium);margin-left:.5rem;text-decoration:none;transition:all var(--transition-fast)}.register-link a:hover{color:var(--color-primary-light)}.additional-links{font-size:.8rem;padding:1rem 2.5rem 2rem;text-align:center}.additional-links a{color:var(--color-text-tertiary);text-decoration:none;transition:all var(--transition-fast)}.additional-links a:hover{color:var(--color-primary)}.link-separator{color:var(--color-text-tertiary);margin:0 .75rem}.field-error{color:var(--color-error);display:block;font-size:.8rem;font-weight:var(--font-weight-medium);margin-top:.5rem;padding-left:.5rem}@media (max-width:768px){.login-page{align-items:flex-start;min-height:auto;padding:calc(var(--header-height, 80px) + 1rem) 1rem 2rem}.login-container{margin-top:1rem;max-width:none}.login-header{padding:2rem 1.5rem 1.5rem}.login-title{font-size:1.5rem}.additional-links,.login-form,.register-link,.security-features{padding-left:1.5rem;padding-right:1.5rem}.form-options{align-items:flex-start;flex-direction:column;gap:1rem}.forgot-link{align-self:flex-end}}@media (max-width:480px){.login-header{padding:1.5rem 1rem}.additional-links,.login-form,.register-link,.security-features{padding-left:1rem;padding-right:1rem}.btn.btn-primary,.form-group input{padding:.875rem}}@media (prefers-reduced-motion:reduce){.btn-spinner,.btn.btn-primary,.login-container,.login-logo{animation:none!important;transition:none!important}.btn.btn-primary:hover{transform:none}}
/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInVzZXItbG9naW4uY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUlBLGlCQUlJLDBCQUEyQixDQUQzQiw4QkFBcUMsQ0FFckMsb0NBQXFDLENBQ3JDLDhCQUErQixDQUUvQixxQ0FBMEMsQ0FOMUMsYUFBYyxDQURkLGVBQWdCLENBTWhCLGVBRUosQ0FHQSxjQUdJLDhCQUFxQyxDQURyQyw0QkFBNkIsQ0FEN0IsaUJBR0osQ0FFQSxZQU9JLGtCQUFtQixDQUpuQixnQ0FBaUMsQ0FDakMsb0NBQXFDLENBQ3JDLDhCQUErQixDQUsvQiwwQkFBMkIsQ0FKM0IsWUFBYSxDQUtiLGdCQUFpQixDQUNqQixtQ0FBb0MsQ0FWcEMsV0FBWSxDQU1aLHNCQUF1QixDQUN2Qiw0QkFBNkIsQ0FJN0IsaUNBQWtDLENBWmxDLFVBYUosQ0FFQSxrQkFFSSxzQ0FBdUMsQ0FEdkMsaUNBRUosQ0FFQSxhQUlJLCtCQUFnQyxDQUhoQyxpQkFBa0IsQ0FDbEIsbUNBQW9DLENBQ3BDLDRCQUVKLENBRUEsZ0JBQ0ksaUNBQWtDLENBQ2xDLGlCQUFtQixDQUNuQixxQ0FDSixDQUdBLFlBQ0kscUJBQ0osQ0FFQSxZQUNJLG9CQUNKLENBRUEsa0JBSUksK0JBQWdDLENBSGhDLGFBQWMsQ0FJZCxpQkFBbUIsQ0FIbkIscUNBQXNDLENBQ3RDLG1CQUdKLENBR0Esa0JBU0ksMEJBQTJCLENBTjNCLGdDQUFpQyxDQUNqQyxvQ0FBcUMsQ0FDckMsOEJBQStCLENBSy9CLHFCQUFzQixDQUp0QiwrQkFBZ0MsQ0FDaEMsY0FBZSxDQUxmLFlBQWEsQ0FNYixxQ0FBc0MsQ0FQdEMsVUFVSixDQUVBLHdCQUlJLHNDQUF1QyxDQUZ2QyxpQ0FBa0MsQ0FDbEMsdUNBQTRDLENBRjVDLFlBSUosQ0FFQSwrQkFDSSxnQ0FDSixDQUdBLDBCQUNJLGlCQUNKLENBRUEsaUJBS0ksZUFBZ0IsQ0FDaEIsV0FBWSxDQUlaLDhCQUErQixDQUgvQixpQ0FBa0MsQ0FDbEMsY0FBZSxDQUlmLGNBQWUsQ0FIZixhQUFlLENBUmYsaUJBQWtCLENBQ2xCLFVBQVcsQ0FDWCxPQUFRLENBQ1IsMEJBQTJCLENBTzNCLHFDQUVKLENBRUEsdUJBQ0ksZ0NBQWlDLENBQ2pDLCtCQUNKLENBRUEsdUJBQ0ksc0NBQXVDLENBQ3ZDLGtCQUNKLENBR0EsY0FLSSxRQUFTLENBRlQsNkJBQThCLENBQzlCLGtCQUVKLENBRUEsOEJBTkksa0JBQW1CLENBRG5CLFlBV0osQ0FKQSxnQkFHSSxTQUNKLENBRUEscUNBR0ksaUNBQWtDLENBRGxDLFFBQVMsQ0FEVCxVQUdKLENBRUEsc0JBR0ksaUNBQWtDLENBQ2xDLGNBQWUsQ0FIZixRQUtKLENBRUEsbUNBTkksaUJBQW1CLENBR25CLHFDQVNKLENBTkEsYUFDSSwwQkFBMkIsQ0FDM0Isb0JBQXFCLENBR3JCLHFDQUNKLENBRUEsbUJBQ0ksZ0NBQ0osQ0FHQSxpQkFjSSxrQkFBbUIsQ0FYbkIsZ0NBQWlDLENBRWpDLHFDQUFzQyxDQUN0Qyw4QkFBK0IsQ0FGL0IsMEJBQTJCLENBSzNCLGNBQWUsQ0FJZixZQUFhLENBTmIsY0FBZSxDQUNmLHVDQUF3QyxDQVF4QyxTQUFXLENBRFgsc0JBQXVCLENBSHZCLGVBQWdCLENBVmhCLGlCQUFrQixDQVNsQixpQkFBa0IsQ0FEbEIscUNBQXNDLENBVHRDLFVBZ0JKLENBR0EsdUJBQ0ksc0NBQXVDLENBRXZDLHVDQUF3QyxDQUR4QyxnQ0FBaUMsQ0FFakMsY0FDSixDQUVBLHdCQUNJLDhCQUFxQyxDQUNyQyxvQkFDSixDQVFBLGFBTUksaUNBQWtDLENBRmxDLDRCQUFrQyxDQUNsQyxpQkFBa0IsQ0FEbEIsNkJBQWtDLENBRmxDLGVBQWdCLENBRGhCLGNBTUosQ0FFQSxnQkFDSSxHQUFLLHNCQUF5QixDQUM5QixHQUFPLHVCQUEyQixDQUN0QyxDQUdBLG1CQUdJLDhCQUFxQyxDQURyQyx3Q0FBeUMsQ0FEekMscUJBR0osQ0FFQSxlQUVJLGtCQUFtQixDQUluQixpQ0FBa0MsQ0FMbEMsWUFBYSxDQUliLGVBQWlCLENBRmpCLFVBQVksQ0FDWixvQkFHSixDQUVBLDBCQUNJLGVBQ0osQ0FFQSw4QkFDSSwwQkFBMkIsQ0FFM0IsZ0JBQWtCLENBRGxCLHVDQUVKLENBR0EsZUFJSSw4QkFBcUMsQ0FEckMsd0NBQXlDLENBRHpDLHFCQUFzQixDQUR0QixpQkFJSixDQUVBLGlCQUVJLGlDQUFrQyxDQUNsQyxpQkFBbUIsQ0FGbkIsUUFHSixDQUVBLGlCQUNJLDBCQUEyQixDQUUzQixxQ0FBc0MsQ0FDdEMsaUJBQW1CLENBRm5CLG9CQUFxQixDQUdyQixxQ0FDSixDQUVBLHVCQUNJLGdDQUNKLENBR0Esa0JBR0ksZUFBaUIsQ0FEakIsd0JBQXlCLENBRHpCLGlCQUdKLENBRUEsb0JBQ0ksZ0NBQWlDLENBQ2pDLG9CQUFxQixDQUNyQixxQ0FDSixDQUVBLDBCQUNJLDBCQUNKLENBRUEsZ0JBRUksZ0NBQWlDLENBRGpDLGVBRUosQ0FHQSxhQUNJLHdCQUF5QixDQUd6QixhQUFjLENBRmQsZUFBaUIsQ0FJakIscUNBQXNDLENBSHRDLGdCQUFrQixDQUVsQixrQkFFSixDQUdBLHlCQUNJLFlBRUksc0JBQXVCLENBQ3ZCLGVBQWdCLENBRmhCLHlEQUdKLENBRUEsaUJBRUksZUFBZ0IsQ0FEaEIsY0FFSixDQUVBLGNBQ0ksMEJBQ0osQ0FFQSxhQUNJLGdCQUNKLENBRUEsZ0VBSUksbUJBQW9CLENBQ3BCLG9CQUNKLENBRUEsY0FFSSxzQkFBdUIsQ0FEdkIscUJBQXNCLENBRXRCLFFBQ0osQ0FFQSxhQUNJLG1CQUNKLENBQ0osQ0FFQSx5QkFDSSxjQUNJLG1CQUNKLENBRUEsZ0VBSUksaUJBQWtCLENBQ2xCLGtCQUNKLENBRUEsbUNBRUksZUFDSixDQUNKLENBR0EsdUNBQ0ksMkRBSUksd0JBQTBCLENBQzFCLHlCQUNKLENBRUEsdUJBQ0ksY0FDSixDQUNKIiwiZmlsZSI6InVzZXItbG9naW4uY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLyogTW9kZXJuaXNpZXJ0ZSBMb2dpbiBTdHlsZXMgLSB1c2VyLWxvZ2luLmNzcyBVcGRhdGVzICovXG4vKiBEaWVzZSDDhG5kZXJ1bmdlbiBlcnNldHplbiBkaWUgdmVyYWx0ZXRlbiBTdHlsZXMgaW4gc3JjL3N0eWxlcy91c2VyLWxvZ2luLmNzcyAqL1xuXG4vKiBMb2dpbiBDb250YWluZXIgLSBNb2Rlcm5lcmVyLCB3ZW5pZ2VyIHZlcnNwaWVsdGVyIExvb2sgKi9cbi5sb2dpbi1jb250YWluZXIge1xuICAgIG1heC13aWR0aDogNDIwcHg7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjAzKTtcbiAgICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoMjBweCk7XG4gICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY29sb3ItYm9yZGVyKTtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMteGwpO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgYm94LXNoYWRvdzogMCAyMHB4IDQwcHggcmdiYSgwLCAwLCAwLCAwLjMpO1xufVxuXG4vKiBMb2dpbiBIZWFkZXIgLSBSZWR1emllcnRlIFZlcnNwaWVsdGhlaXQgKi9cbi5sb2dpbi1oZWFkZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBwYWRkaW5nOiAyLjVyZW0gMi41cmVtIDEuNXJlbTtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDIpO1xufVxuXG4ubG9naW4tbG9nbyB7XG4gICAgd2lkdGg6IDUwcHg7XG4gICAgaGVpZ2h0OiA1MHB4O1xuICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLWJnLWdsYXNzKTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1ib3JkZXIpO1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1sZyk7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIG1hcmdpbjogMCBhdXRvIHZhcigtLXNwYWNlLTQpO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1wcmltYXJ5KTtcbiAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYm9sZCk7XG4gICAgdHJhbnNpdGlvbjogdmFyKC0tdHJhbnNpdGlvbi1iYXNlKTtcbn1cblxuLmxvZ2luLWxvZ286aG92ZXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItcHJpbWFyeSk7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItYmctZ2xhc3MtaG92ZXIpO1xufVxuXG4ubG9naW4tdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMS43NXJlbTtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYm9sZCk7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2UtMik7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtcHJpbWFyeSk7XG59XG5cbi5sb2dpbi1zdWJ0aXRsZSB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtc2Vjb25kYXJ5KTtcbiAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1tZWRpdW0pO1xufVxuXG4vKiBGb3JtIFN0eWxlcyAtIENsZWFuZXIsIHByb2Zlc3Npb25lbGxlciAqL1xuLmxvZ2luLWZvcm0ge1xuICAgIHBhZGRpbmc6IDAgMi41cmVtIDJyZW07XG59XG5cbi5mb3JtLWdyb3VwIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG59XG5cbi5mb3JtLWdyb3VwIGxhYmVsIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbWVkaXVtKTtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtcHJpbWFyeSk7XG4gICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbn1cblxuLyogSW5wdXRzIC0gS29uc2lzdGVudCBtaXQgZGVtIFJlc3QgZGVyIFdlYnNpdGUgKi9cbi5mb3JtLWdyb3VwIGlucHV0IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiAxcmVtO1xuICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLWJnLWdsYXNzKTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1ib3JkZXIpO1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1sZyk7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtcHJpbWFyeSk7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIHRyYW5zaXRpb246IGFsbCB2YXIoLS10cmFuc2l0aW9uLWJhc2UpO1xuICAgIGJhY2tkcm9wLWZpbHRlcjogYmx1cigxMHB4KTtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4uZm9ybS1ncm91cCBpbnB1dDpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLXByaW1hcnkpO1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIDNweCByZ2JhKDAsIDI0NSwgMjU1LCAwLjEpO1xuICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLWJnLWdsYXNzLWhvdmVyKTtcbn1cblxuLmZvcm0tZ3JvdXAgaW5wdXQ6OnBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC10ZXJ0aWFyeSk7XG59XG5cbi8qIFBhc3N3b3JkIFRvZ2dsZSAtIFN1YnRpbGVyICovXG4ucGFzc3dvcmQtaW5wdXQtY29udGFpbmVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5wYXNzd29yZC10b2dnbGUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMXJlbTtcbiAgICB0b3A6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtc2Vjb25kYXJ5KTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgcGFkZGluZzogMC41cmVtO1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1sZyk7XG4gICAgdHJhbnNpdGlvbjogYWxsIHZhcigtLXRyYW5zaXRpb24tZmFzdCk7XG4gICAgZm9udC1zaXplOiAxcmVtO1xufVxuXG4ucGFzc3dvcmQtdG9nZ2xlOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1iZy1nbGFzcyk7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtcHJpbWFyeSk7XG59XG5cbi5wYXNzd29yZC10b2dnbGU6Zm9jdXMge1xuICAgIG91dGxpbmU6IDJweCBzb2xpZCB2YXIoLS1jb2xvci1wcmltYXJ5KTtcbiAgICBvdXRsaW5lLW9mZnNldDogMnB4O1xufVxuXG4vKiBGb3JtIE9wdGlvbnMgKi9cbi5mb3JtLW9wdGlvbnMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICBnYXA6IDFyZW07XG59XG5cbi5jaGVja2JveC1ncm91cCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogMC41cmVtO1xufVxuXG4uY2hlY2tib3gtZ3JvdXAgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICB3aWR0aDogYXV0bztcbiAgICBtYXJnaW46IDA7XG4gICAgYWNjZW50LWNvbG9yOiB2YXIoLS1jb2xvci1wcmltYXJ5KTtcbn1cblxuLmNoZWNrYm94LWdyb3VwIGxhYmVsIHtcbiAgICBtYXJnaW46IDA7XG4gICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1zZWNvbmRhcnkpO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbWVkaXVtKTtcbn1cblxuLmZvcmdvdC1saW5rIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItcHJpbWFyeSk7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LW1lZGl1bSk7XG4gICAgdHJhbnNpdGlvbjogYWxsIHZhcigtLXRyYW5zaXRpb24tZmFzdCk7XG59XG5cbi5mb3Jnb3QtbGluazpob3ZlciB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLXByaW1hcnktbGlnaHQpO1xufVxuXG4vKiBXSUNIVElHOiBNb2Rlcm5lciBCdXR0b24gLSBWZXJ3ZW5kZXQgZGFzIGtvcnJla3RlIGJ0bi1wcmltYXJ5IERlc2lnbiAqL1xuLmJ0bi5idG4tcHJpbWFyeSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZzogMXJlbSAycmVtO1xuICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLWJnLWdsYXNzKTtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItcHJpbWFyeSk7XG4gICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY29sb3ItcHJpbWFyeSk7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLWxnKTtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXNlbWlib2xkKTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgdHJhbnNpdGlvbjogYWxsIHZhcigtLXRyYW5zaXRpb24tYmFzZSk7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGdhcDogMC41cmVtO1xufVxuXG4vKiBTdWJ0aWxlciBIb3Zlci1FZmZla3Qgb2huZSDDnGJlcnRyZWlidW5nICovXG4uYnRuLmJ0bi1wcmltYXJ5OmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1iZy1nbGFzcy1ob3Zlcik7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLXByaW1hcnktbGlnaHQpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItcHJpbWFyeS1saWdodCk7XG4gICAgdHJhbnNmb3JtOiBub25lOyAvKiBLZWluIFwiU3ByaW5nZW5cIiAqL1xufVxuXG4uYnRuLmJ0bi1wcmltYXJ5OmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA4KTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuOTgpO1xufVxuXG4vKiBFbnRmZXJuZW4gZGVyIGFsdGVuIHZlcnNwaWVsdGVuIC5sb2dpbi1idG4gS2xhc3NlICovXG4ubG9naW4tYnRuIHtcbiAgICAvKiBEaWVzZSBLbGFzc2Ugd2lyZCBuaWNodCBtZWhyIHZlcndlbmRldCAtIG51ciBub2NoIC5idG4uYnRuLXByaW1hcnkgKi9cbn1cblxuLyogQnV0dG9uIFNwaW5uZXIgLSBNb2Rlcm5lciAqL1xuLmJ0bi1zcGlubmVyIHtcbiAgICB3aWR0aDogMS4xMjVyZW07XG4gICAgaGVpZ2h0OiAxLjEyNXJlbTtcbiAgICBib3JkZXI6IDJweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItdG9wOiAycHggc29saWQgY3VycmVudENvbG9yO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBhbmltYXRpb246IHNwaW4gMXMgbGluZWFyIGluZmluaXRlO1xufVxuXG5Aa2V5ZnJhbWVzIHNwaW4ge1xuICAgIDAlIHsgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7IH1cbiAgICAxMDAlIHsgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTsgfVxufVxuXG4vKiBTZWN1cml0eSBGZWF0dXJlcyAtIE1pbmltYWxpc3Rpc2NoZXIgKi9cbi5zZWN1cml0eS1mZWF0dXJlcyB7XG4gICAgcGFkZGluZzogMS41cmVtIDIuNXJlbTtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tY29sb3ItYm9yZGVyKTtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDEpO1xufVxuXG4uc2VjdXJpdHktaXRlbSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogMC43NXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjc1cmVtO1xuICAgIGZvbnQtc2l6ZTogMC44cmVtO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LXNlY29uZGFyeSk7XG59XG5cbi5zZWN1cml0eS1pdGVtOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5zZWN1cml0eS1pdGVtIC5zZWN1cml0eS1pY29uIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3Itc3VjY2Vzcyk7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXNlbWlib2xkKTtcbiAgICBmb250LXNpemU6IDAuNzVyZW07XG59XG5cbi8qIFJlZ2lzdGVyIExpbmsgLSBDbGVhbmVyICovXG4ucmVnaXN0ZXItbGluayB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHBhZGRpbmc6IDEuNXJlbSAyLjVyZW07XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJvcmRlcik7XG4gICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjAxKTtcbn1cblxuLnJlZ2lzdGVyLWxpbmsgcCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LXNlY29uZGFyeSk7XG4gICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbn1cblxuLnJlZ2lzdGVyLWxpbmsgYSB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLXByaW1hcnkpO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbWVkaXVtKTtcbiAgICBtYXJnaW4tbGVmdDogMC41cmVtO1xuICAgIHRyYW5zaXRpb246IGFsbCB2YXIoLS10cmFuc2l0aW9uLWZhc3QpO1xufVxuXG4ucmVnaXN0ZXItbGluayBhOmhvdmVyIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItcHJpbWFyeS1saWdodCk7XG59XG5cbi8qIEFkZGl0aW9uYWwgTGlua3MgLSBNaW5pbWFsaXN0aXNjaGVyICovXG4uYWRkaXRpb25hbC1saW5rcyB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHBhZGRpbmc6IDFyZW0gMi41cmVtIDJyZW07XG4gICAgZm9udC1zaXplOiAwLjhyZW07XG59XG5cbi5hZGRpdGlvbmFsLWxpbmtzIGEge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LXRlcnRpYXJ5KTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgdHJhbnNpdGlvbjogYWxsIHZhcigtLXRyYW5zaXRpb24tZmFzdCk7XG59XG5cbi5hZGRpdGlvbmFsLWxpbmtzIGE6aG92ZXIge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1wcmltYXJ5KTtcbn1cblxuLmxpbmstc2VwYXJhdG9yIHtcbiAgICBtYXJnaW46IDAgMC43NXJlbTtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC10ZXJ0aWFyeSk7XG59XG5cbi8qIEZpZWxkIEVycm9ycyAqL1xuLmZpZWxkLWVycm9yIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItZXJyb3IpO1xuICAgIGZvbnQtc2l6ZTogMC44cmVtO1xuICAgIG1hcmdpbi10b3A6IDAuNXJlbTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNXJlbTtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbWVkaXVtKTtcbn1cblxuLyogUmVzcG9uc2l2ZSBEZXNpZ24gLSBWZXJlaW5mYWNodCAqL1xuQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgLmxvZ2luLXBhZ2Uge1xuICAgICAgICBwYWRkaW5nOiBjYWxjKHZhcigtLWhlYWRlci1oZWlnaHQsIDgwcHgpICsgMXJlbSkgMXJlbSAycmVtO1xuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgICAgbWluLWhlaWdodDogYXV0bztcbiAgICB9XG4gICAgXG4gICAgLmxvZ2luLWNvbnRhaW5lciB7XG4gICAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICAgICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICB9XG4gICAgXG4gICAgLmxvZ2luLWhlYWRlciB7XG4gICAgICAgIHBhZGRpbmc6IDJyZW0gMS41cmVtIDEuNXJlbTtcbiAgICB9XG4gICAgXG4gICAgLmxvZ2luLXRpdGxlIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgfVxuICAgIFxuICAgIC5sb2dpbi1mb3JtLFxuICAgIC5zZWN1cml0eS1mZWF0dXJlcyxcbiAgICAucmVnaXN0ZXItbGluayxcbiAgICAuYWRkaXRpb25hbC1saW5rcyB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMS41cmVtO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW07XG4gICAgfVxuICAgIFxuICAgIC5mb3JtLW9wdGlvbnMge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgICAgZ2FwOiAxcmVtO1xuICAgIH1cbiAgICBcbiAgICAuZm9yZ290LWxpbmsge1xuICAgICAgICBhbGlnbi1zZWxmOiBmbGV4LWVuZDtcbiAgICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICAgIC5sb2dpbi1oZWFkZXIge1xuICAgICAgICBwYWRkaW5nOiAxLjVyZW0gMXJlbTtcbiAgICB9XG4gICAgXG4gICAgLmxvZ2luLWZvcm0sXG4gICAgLnNlY3VyaXR5LWZlYXR1cmVzLFxuICAgIC5yZWdpc3Rlci1saW5rLFxuICAgIC5hZGRpdGlvbmFsLWxpbmtzIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxcmVtO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxcmVtO1xuICAgIH1cbiAgICBcbiAgICAuZm9ybS1ncm91cCBpbnB1dCxcbiAgICAuYnRuLmJ0bi1wcmltYXJ5IHtcbiAgICAgICAgcGFkZGluZzogMC44NzVyZW07XG4gICAgfVxufVxuXG4vKiBBY2Nlc3NpYmlsaXR5IC0gUmVkdXppZXJ0ZSBCZXdlZ3VuZyAqL1xuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgICAubG9naW4tY29udGFpbmVyLFxuICAgIC5idG4uYnRuLXByaW1hcnksXG4gICAgLmJ0bi1zcGlubmVyLFxuICAgIC5sb2dpbi1sb2dvIHtcbiAgICAgICAgYW5pbWF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIHRyYW5zaXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gICAgXG4gICAgLmJ0bi5idG4tcHJpbWFyeTpob3ZlciB7XG4gICAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB9XG59Il19 */