.login-shell{min-height:100vh;display:grid;place-items:center;padding:1.5rem;background:#fafafa}.login-card{width:min(100%,28rem);border:1px solid #e5e7eb;border-radius:.875rem;overflow:hidden;background:#fff;box-shadow:0 10px 30px #0f172a0f}.login-head{padding:1.25rem 1.5rem;border-bottom:1px solid #e5e7eb;background:#2e5b4e0f}.login-head h1{margin:0;font-size:1.35rem;line-height:1.3;font-weight:700;color:#111827}.login-head p{margin:.45rem 0 0;font-size:.92rem;line-height:1.4;color:#4b5563}.login-body{padding:1.3rem 1.5rem 1.5rem}.login-error{margin-bottom:.8rem;border:1px solid #fecaca;border-radius:.625rem;background:#fef2f2;color:#b91c1c;font-size:.9rem;padding:.6rem .75rem}.login-form{display:grid;gap:.55rem}.login-form label{font-size:.88rem;color:#374151;font-weight:600}.login-form input{width:100%;height:2.55rem;border:1px solid #d1d5db;border-radius:.55rem;padding:0 .75rem;font-size:.95rem;color:#111827;transition:border-color .12s ease,box-shadow .12s ease}.login-form input:focus-visible{outline:none;border-color:#2e5b4e;box-shadow:0 0 0 3px #2e5b4e24}.login-form button[type=submit]{margin-top:.4rem;height:2.65rem;border:0;border-radius:.6rem;background:#2e5b4e;color:#fff;font-size:.94rem;font-weight:700;cursor:pointer;transition:background .12s ease,transform .12s ease}.login-form button[type=submit]:hover:not(:disabled){background:#1e3d34}.login-form button[type=submit]:active:not(:disabled){transform:translateY(1px)}.login-form button[type=submit]:disabled{cursor:not-allowed;background:#94a3b8}.login-divider{margin:1rem 0;height:1px;background:#e5e7eb}.login-demo{display:flex;flex-wrap:wrap;gap:.5rem}.login-demo button{border:1px solid #d1d5db;border-radius:999px;background:#fff;color:#334155;font-size:.78rem;font-weight:600;padding:.32rem .68rem;cursor:pointer;transition:border-color .12s ease,background-color .12s ease,color .12s ease}.login-demo button:hover:not(:disabled){border-color:#94a3b8;background:#f8fafc}.login-demo button.is-active{border-color:#2e5b4e;background:#2e5b4e1f;color:#1e3d34}.login-demo button:disabled{opacity:.6;cursor:not-allowed}@media(max-width:640px){.login-shell{padding:1rem}.login-head{padding:1.05rem 1.15rem}.login-body{padding:1.1rem 1.15rem 1.2rem}}:root{font-family:IBM Plex Sans,Noto Sans,Helvetica Neue,sans-serif;color:#1a1a1a;background-color:#fff}*,*:before,*:after{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;background-color:#fff;background-image:none;line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeSpeed}button,input,select,textarea{font:inherit}*{scrollbar-width:thin;scrollbar-color:#d4d4d4 transparent}::selection{background-color:#2e5b4e1f}.page-enter{animation:fadeSlideIn .25s ease-out;will-change:opacity,transform}@keyframes fadeSlideIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.loading-indicator{display:flex;align-items:center;justify-content:center;min-height:200px;color:#0009;font-size:.875rem}.skip-link{position:absolute;left:12px;top:12px;z-index:1600;transform:translateY(-140%);padding:.55rem .8rem;border-radius:.5rem;background:#1f3f35;color:#fff;text-decoration:none;font-size:.875rem;font-weight:600;box-shadow:0 6px 20px #0003;transition:transform .12s ease-out}.skip-link:focus-visible{transform:translateY(0)}@media(prefers-reduced-motion:reduce){.page-enter{animation:none}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.content-auto{content-visibility:auto;contain-intrinsic-size:auto 500px}.contain-layout{contain:layout style}.contain-paint{contain:paint}
