*{margin:0;padding:0;box-sizing:border-box}body{font-family:Geist,ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{min-height:100vh}.default-layout{display:flex;flex-direction:column;min-height:100vh}.default-layout .header{background:#fff;box-shadow:0 2px 4px #0000001a}.default-layout .main-content{flex:1;padding:2rem}.public-layout{min-height:100vh;align-items:center;justify-content:center;background:#f5f5f5}.public-layout.is-login-page{background:#f6f6f3}.login-page{width:100%;max-width:400px;padding:2rem}.login-page .login-container{background:#fff;padding:2rem;border-radius:8px;box-shadow:0 4px 6px #0000001a}.login-page .login-container h1{margin-bottom:2rem;text-align:center;color:#333}.login-page .login-container .form-group{margin-bottom:1.5rem}.login-page .login-container .form-group label{display:block;margin-bottom:.5rem;color:#555;font-weight:500}.login-page .login-container .form-group input{width:100%;padding:.75rem;border:1px solid #ddd;border-radius:4px;font-size:1rem}.login-page .login-container .form-group input:focus{outline:none;border-color:#667eea}.login-page .login-container button{width:100%;padding:.75rem;background:#667eea;color:#fff;border:none;border-radius:4px;font-size:1rem;font-weight:500;cursor:pointer;transition:background .2s}.login-page .login-container button:hover:not(:disabled){background:#5568d3}.login-page .login-container button:disabled{opacity:.6;cursor:not-allowed}.login-page .login-container .error-message{background:#fee;color:#c33;padding:.75rem;border-radius:4px;margin-bottom:1rem}
